mehrdimensionale Listen
Verfasst: Mittwoch 16. Dezember 2020, 13:57
Moin,
im Rahmen meines Info Labors muss ich ein Algorithmus erstellen, der ein Spiel löst.
Dafür muss ich diese mehrdimensionale Liste auslesen:
[[1, 10, 10, 2], [1, 10, 10, 2], [0, 5, 5, 0], [3, 6, 7, 4], [3, 8, 9, 4]]
Ich suche nach der Position beider Nullen, denn sie repräsentieren Felder die verschoben werden können.
Ich schaffe es leider nur eine Null zu finden, die zweite wird mir nie ausgegeben.
Hat jemand eine Idee wie ich das Problem lösen kann und ich anschließend mit den Werten arbeiten kann?
Dies ist bislang mein Code: (in der start Datei ist die oben genannte Liste)
im Rahmen meines Info Labors muss ich ein Algorithmus erstellen, der ein Spiel löst.
Dafür muss ich diese mehrdimensionale Liste auslesen:
[[1, 10, 10, 2], [1, 10, 10, 2], [0, 5, 5, 0], [3, 6, 7, 4], [3, 8, 9, 4]]
Ich suche nach der Position beider Nullen, denn sie repräsentieren Felder die verschoben werden können.
Ich schaffe es leider nur eine Null zu finden, die zweite wird mir nie ausgegeben.
Hat jemand eine Idee wie ich das Problem lösen kann und ich anschließend mit den Werten arbeiten kann?
Dies ist bislang mein Code: (in der start Datei ist die oben genannte Liste)
Code: Alles auswählen
# Datei einlesen
with open("start.txt") as file:
liste = []
for line in file:
if not line.strip(): # <- leere Zeile == keine Daten
continue
row = list(map(int,line.split(","))) # Die Zeile beim Komma trennen und die Werte in int umwandeln
liste.append(row)
print (liste) #Test: Matrix ausgeben
# Null in Liste suchen
def find (l, elem):
for row, i in enumerate(l):
try:
column = i.index(elem)
except ValueError:
continue
return row, column
return -1
print(find(liste,0))
row = 0