Referenzseite: [Einführung in Python] Wie iteriere ich mit der Bereichsfunktion?
In Python kann die for-Anweisung verwendet werden, um den Vorgang eine bestimmte Anzahl von Malen zu wiederholen. Zu diesem Zeitpunkt können Sie eine Liste mit numerischen Werten erstellen und um diese Länge drehen. Die Verwendung des Bereichs erleichtert jedoch das Schreiben wie Python.
Dieses Mal werde ich erklären, wie Range in Python verwendet wird.
Wenn Sie den Vorgang in Python eine bestimmte Anzahl von Malen wiederholen möchten, können Sie dies anhand der Liste der Satzlänge tun. Wenn Sie beispielsweise 5 Mal wiederholen möchten, verwenden Sie eine Liste mit der Länge 5.
list1 = [1, 2, 3, 4, 5]
count = 0
for x in list1:
count += 1
print('Anzahl der Schleifen:{}'.format(count))
Ausführungsergebnis
Schleifenzahl: 5
Diese Methode ist in Ordnung, aber wenn Sie sie längere Zeit wiederholen, beispielsweise 100 oder 1000 Mal, kann es mühsam und zeitaufwändig sein, eine Liste dieser Länge zu haben.
Wenn Sie die Schleife eine bestimmte Anzahl von Malen wiederholen möchten, verwenden Sie die Bereichsfunktion. Die Bereichsfunktion ist eine Funktion, die automatisch eine fortlaufende Liste von Ganzzahlen einer bestimmten Länge generiert. Durch Kombinieren der for-Anweisung und der range-Funktion können Sie beliebig oft eine Schleife ausführen.
für Variable im Bereich([Startnummer,]Letzte Nummer[,Zu erhöhender Betrag]):
#Schleifenverarbeitung
Der Bereich hat drei Argumente: Startnummer, letzte Nummer und zunehmende Menge, von denen die Startnummer und die zunehmende Menge weggelassen werden können. Wenn Sie eine Zahl an range () übergeben, ist dies die letzte Zahl, und es wird eine Liste mit den Werten von 0 bis "letzte Zahl - 1" erstellt.
count = 0
for x in range(5):
print(x)
count += 1
print('Anzahl der Schleifen:{}'.format(count))
Ausführungsergebnis
0 1 2 3 4 Anzahl der Schleifen: 5
In diesem Beispiel wird, da 5 an range () übergeben wird, eine "Liste der Länge 5 mit Elementen von 0 bis 4" erstellt, und die Elemente werden von dort nacheinander herausgenommen. Führen Sie also eine 5-malige Schleife durch. Ich kann. Wenn die erste Zahl eine beliebige Zahl anstelle von 0 sein soll, geben Sie die "Startnummer" des Arguments ein.
count = 0
for x in range(1, 5):
print(x)
count += 1
print('Anzahl der Schleifen:{}'.format(count))
Ausführungsergebnis
1 2 3 4 Anzahl der Schleifen: 4
Das Argument des Bereichs wurde von (5) auf (1,5) geändert. Dies führte zu einer "Liste der Länge 4 mit Elementen von 1 bis 4", die nach Bereich zurückgegeben wurde, was zu 4 Schleifen führte.
Sie können die Wertschöpfung für das nächste Element auch frei ändern, indem Sie den "Erhöhungsbetrag" angeben. Auf diese Weise können Sie auf einfache Weise Listen erstellen, die von 0 auf 8 um 2 und von 0 auf 9 um 3 erhöht werden.
count = 0
for x in range(0, 10, 2):
print(x)
count += 1
print('Anzahl der Schleifen:{}'.format(count))
Ausführungsergebnis
0 2 4 6 8 Anzahl der Schleifen: 5
In diesem Beispiel ist der Anfang 0 und das Ende 10, aber der zu erhöhende Betrag ist 2. Daher gibt range "eine Liste der Länge 5 zurück, die um 2 von 0 auf 8 erhöht wird", sodass die Anzahl der Schleifen 5 beträgt.
Sie können auch negative Zahlen im Bereich verwenden. Sie können eine Liste auch in umgekehrter Reihenfolge erstellen, indem Sie die Start- und Endwerte umkehren und den Betrag auf eine negative Zahl erhöhen.
count = 0
for x in range(10, 0, -2): #Übergeben Sie eine negative Zahl
print(x)
count += 1
print('Anzahl der Schleifen:{}'.format(count))
Ausführungsergebnis
10 8 6 4 2 Anzahl der Schleifen: 5
Wenn Ihre Python-Version 2.x.x ist, gibt es xrange als eine Funktion, die dem Bereich sehr ähnlich ist. Das Verwendungs- und Ausführungsergebnis von xrange entspricht genau dem Bereich.
count = 0
for x in xrange(5):
print(x)
count += 1
print('Anzahl der Schleifen:{}'.format(count))
Ausführungsergebnis
0 1 2 3 4 Anzahl der Schleifen: 5
Der Unterschied zwischen range und xrange besteht darin, dass xrange Speicherplatz spart. range erstellt eine Liste mit den durch das Argument angegebenen Elementen und führt die for-Anweisung aus, indem die Elemente aus der Liste extrahiert werden. Auf der anderen Seite führt xrange die for-Anweisung nach dem ersten Erstellen der Liste nicht aus, sondern generiert den Wert nach Bedarf beim Abrufen mit der for-Anweisung. Mit anderen Worten, da keine Liste erstellt wird, kann xrange Speicher für denselben Prozess sparen.
Der Unterschied zwischen Bereich und x-Bereich ist jedoch so gering, dass Sie normalerweise keinen x-Bereich verwenden müssen. Grundsätzlich sollten Sie Reichweite verwenden.
Außerdem wurde in der Python3-Serie die Struktur des Bereichs nahe an xrange, sodass xrange selbst abgeschafft wurde. Daher ist es im Fall der Python3-Serie besser, die Reichweite zu verwenden, ohne sich darüber Gedanken zu machen.
Recommended Posts