Heim > Backend-Entwicklung > Python-Tutorial > Wie initialisiere und indiziere ich ein zweidimensionales Array in Python richtig?

Wie initialisiere und indiziere ich ein zweidimensionales Array in Python richtig?

Linda Hamilton
Freigeben: 2024-12-11 02:23:09
Original
403 Leute haben es durchsucht

How to Properly Initialize and Index a Two-Dimensional Array in Python?

Definieren eines zweidimensionalen Arrays in Python

Beim Initialisieren eines zweidimensionalen Arrays ohne Angabe der Länge kann der Fehler „ IndexError: Listenindex außerhalb des gültigen Bereichs.“ Dies liegt daran, dass Python erfordert, dass die äußere Liste mit leeren Listen initialisiert wird, bevor Elemente hinzugefügt werden.

Um dieses Problem zu beheben, verwenden Sie Listenverständnis, um das Array zu erstellen:

w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)]
Nach dem Login kopieren

Dadurch wird ein erstellt Liste mit 5 Listen mit jeweils 8 Elementen, alle auf Null gesetzt.

Sie können dem Array dann Elemente hinzufügen als folgt:

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! IndexError: list index out of range
Matrix[0][6] = 3 # valid
Nach dem Login kopieren

Beachten Sie, dass die Matrix die Hauptadresse „y“ hat, was bedeutet, dass der äußere Index (y) vor dem inneren Index (x) steht. Dies unterscheidet sich von einigen anderen Programmiersprachen.

Zum Beispiel:

print Matrix[0][0] # prints 1
x, y = 0, 6
print Matrix[x][y] # prints 3; be careful with indexing!
Nach dem Login kopieren

Während Sie die Indizes beliebig benennen können, kann die Verwendung von „x“ für die innere und äußere Liste zu Problemen führen Verwirrung bei der Indizierung nichtquadratischer Matrizen.

Das obige ist der detaillierte Inhalt vonWie initialisiere und indiziere ich ein zweidimensionales Array in Python richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage