6 Stimmen

Python: Listen vergleichen

Ich bin auf ein kleines Problem gestoßen. Angenommen, ich habe zwei Listen:

list_A = ['0','1','2']
list_B = ['2','0','1']

Ich habe dann eine Liste von Listen:

matrix = [
['56','23','4'],
['45','5','67'],
['1','52','22']
]

Ich muss dann durch list_A und list_B iterieren und sie effektiv als Koordinaten verwenden. Zum Beispiel nehme ich die erste Zahl aus Liste A und B, die "0" und "2" wäre, ich verwende sie dann als Koordinaten: print matrix[0][2]

Ich muss dann das Gleiche für die zweite Zahl in Liste A und B und die dritte Zahl in Liste A und B und so weiter tun, wie lange Liste A und B sein würde. Wie mache ich das in einer Schleife?

8voto

unutbu Punkte 769083
matrix = [
['56','23','4'],
['45','5','67'],
['1','52','22']
]

list_A = ['0','1','2']
list_B = ['2','0','1']

for x in zip(list_A,list_B):
    a,b=map(int,x)
    print(matrix[a][b])
# 4
# 45
# 52

2voto

sepp2k Punkte 352762
[matrix[int(a)][int(b)] for (a,b) in zip(list_A, list_B)]

0voto

Kos Punkte 67505

Die Funktion "zip" könnte hier von Nutzen sein. Sie erzeugt eine Liste von Paaren aus list_A und list_B.

for (x,y) in zip(list_A, list_B):
    # do something with the coordinates

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X