This is an old revision of the document!
Wegfindungsalgorithmen
Ziel ist es, dass Sie ihren Wegfindungsalgorithmus in Python übersetzen und auf verschiedenen Labyrinthen testen.
Nützliche Code Schnipsel
Labyrinth laden
Beispiellabyrinthe gibt es hier: labs.zip. Entpacken Sie die Dateien ins gleiche Verzeichnis, wo sich ihre Programme und die Klassen befinden.
Von Datei laden
from laby import Laby from zelle import Zelle l = Laby.load("10x07-06.txt") print(l)
In Datei speichern
# l enthält eine Instanz der Klasse Laby l.save("meineloesung.txt")
Start und Ziel markieren
l[0,0].mark = "S" l[l.breite-1, l.hoehe-1].mark = "Z"
Erreichbare Nachbarszellen
aktuell = l[2,4] # eine Zelle des Labyrinths for dir in range(4): # Alle Richtungen durchgehen if aktuell.offen[dir]: # Wand in die Richtung ist offen nb = aktuell.nachbar(dir) # Nachbarszelle (oder None, wenn es diese nicht gibt) if nb!=None: # Nur wenn es diese Zelle auch gibt (Mauern am Rand könnten auch offen sein) # Tu wat mit nb nb.mark = "X" aktuell = nb break # for-Schleife sofort beenden (evtl. weitere Nachbarn ignorieren)