Heim >Backend-Entwicklung >Python-Tutorial >So referenzieren Sie Arrays in Python-Listen
In diesem Artikel werden Python-Listen vorgestellt. In Computersprachen sind Python-Listen eine weit verbreitete Sprache. Wenn Sie Fragen zur praktischen Anwendung von Python-Listen haben, können Sie unseren Artikel durchsuchen.
Es gibt keine Datenstruktur für Arrays in Python, aber Listen sind Arrays sehr ähnlich, wie zum Beispiel:
a=[0,1,2]这时a[0]=0, a[1]=1, a[[2]=2,
Aber es stellt sich die Frage, was passiert, wenn Array a gewünscht wird kann von 0 bis 999 definiert werden. Dies kann durch a = range(0, 1000) erreicht werden. Oder lassen Sie es als a = range(1000) weg. Wenn Sie a mit einer Länge von 1000 definieren möchten und die Anfangswerte alle 0 sind, dann
a = [0 for x in range(0, 1000)]
hier wird ein 10*10 zwei- definiert. dimensionales Array mit einem Anfangswert von 0. Später habe ich im Internet eine einfachere Methode für literale zweidimensionale Arrays gefunden: b = [[0]*10]*10, die 10*10 als zweidimensionales Array mit einem Anfangswert von 0 definiert. Vergleichen Sie mit
a=[[0 for x in range(10)] for y in range(10)]
: Das Ergebnis von print a==b ist True. Nachdem jedoch die Definitionsmethode von b anstelle von a verwendet wurde, ging auch das vorherige Programm, das normal ausgeführt werden konnte, schief. Nach sorgfältiger Analyse wurde der Unterschied festgestellt: Wenn a[0][0]=1, nur a[0][. 0] ist 1, alle anderen sind 0. Wenn b[0][0]=1, sind a[0][0], a[1][0] und a[9,0] alle 1. Daraus erhalten wir, dass die 10 kleinen eindimensionalen Daten im großen Array alle dieselbe Referenz haben, das heißt, sie zeigen auf dieselbe Adresse. Daher entspricht b = [[0]*10]*10 nicht unserem herkömmlichen zweidimensionalen Array.
Gleichzeitig wurde getestet: Die Definition von c=[0]*10 hat den gleichen Effekt wie c=[0 für x in range(10)], ohne das gleiche Referenzproblem wie oben Es wird geschätzt, dass die Definition des Arrays c zu diesem Zeitpunkt den Werttyp multipliziert, während im vorherigen b der Typ multipliziert wird, da das eindimensionale Array eine Referenz ist (Ausleihe des Werttyps und des Referenztyps in C#) , ich weiß nicht, ob es angemessen ist). Der obige Artikel ist eine teilweise Einführung in Python-Listen.
Oben erfahren Sie, wie Sie auf Arrays in Python-Listen verweisen. Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn).