Bereich bedeutet in Python „Bereich“ und „Reihe“. Es handelt sich um eine integrierte Funktion, die zum Generieren einer Reihe aufeinanderfolgender Ganzzahlen und zum Erstellen einer Liste von Ganzzahlen verwendet wird [,step])“; seine Ganzzahlliste reicht vom Startwert bis zum Stoppwert, enthält jedoch keinen Stopp.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, Python 3-Version, Dell G3-Computer.
range bedeutet „Bereich“ oder „eine Reihe“.
Python Range()
Range ist eine integrierte Funktion in Python, die verwendet wird, um eine Reihe aufeinanderfolgender Ganzzahlen zu generieren und eine zu erstellen Liste von Ganzzahlen, die im Allgemeinen in for-Schleifen verwendet werden.
range()-Funktionssyntax
range(start, stop[, step])
Parameterbeschreibung:
Start: Die Zählung beginnt von Anfang an. Standardmäßig wird bei 0 begonnen. Beispielsweise entspricht range(5) range(0, 5);
stop: zählt bis zum Ende des Stops, schließt Stop jedoch nicht ein. Beispiel: Bereich (0, 5) ist [0, 1, 2, 3, 4] ohne 5
Schritt: Schrittgröße, Standard ist 1. Zum Beispiel: range(0, 5) ist äquivalent zu range(0, 5, 1)
Beispiel
>>>range(10) # 从 0 开始到 10 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(1, 11) # 从 1 开始到 11 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>> range(0, 30, 5) # 步长为 5 [0, 5, 10, 15, 20, 25] >>> range(0, 10, 3) # 步长为 3 [0, 3, 6, 9] >>> range(0, -10, -1) # 负数 [0, -1, -2, -3, -4, -5, -6, -7, -8, -9] >>> range(0) [] >>> range(1, 0) []
Das Folgende ist die Verwendung von range in for, wobei jeder Buchstabe von runoob durchgeschleift wird :
>>>x = 'runoob' >>> for i in range(len(x)) : ... print(x[i]) ... r u n o o b >>>
Analyse
(1)range() ist ein iterierbares Objekt, aber kein Iterator.
Wie unten gezeigt:
Ergänzung:
Iterierbares Objekt (Iterierbar):
Alle Objekte die in for-Schleifen verwendet werden können, sind iterierbare Objekte, die von Iterable im Collections-Modul beurteilt werden können.
Iterator:
kann nicht nur in for-Schleifen verwendet werden, sondern auch in der next()-Funktion. Das Objekt der next()-Funktion ist ein Iterator, der eine Folge von Lazy darstellt Berechnungen und können im Collections-Modul zur Beurteilung verwendet werden.
Wenn das iterierbare Objekt ein Iterator werden möchte, können Sie die Funktion iter() verwenden:
iter(range(3))
Wenn die for-Schleife durchlaufen wird, wird das iterierbare Objekt verwendet und der Iterator Die Leistung der Prozessoren ist gleich, das heißt, sie werden alle träge ausgewertet, und es gibt keinen Unterschied in der räumlichen Komplexität und der zeitlichen Komplexität. Der Unterschied zwischen iterierbaren Objekten und Iteratoren ist „das Gleiche, aber zwei verschiedene Dinge“: Das Gleiche ist, dass beide träge iteriert werden können (__Iter__-Methode), aber der Unterschied besteht darin, dass iterierbare Objekte keine Selbstdurchquerung unterstützen (d. h. __next__-Methode), während der iterierbare Container selbst kein Slicing unterstützt (d. h. die __getitem__-Methode).
(2)range() ist ein unveränderlicher Sequenztyp. Er kann Operationen wie das Beurteilen von Elementen, das Finden von Elementen, das Schneiden usw. ausführen, aber keine Elemente ändern.
Kurz gesagt: range() ist ein iterierbares Objekt und kein Iterator, und das Range-Objekt ist eine unveränderliche arithmetische Folge.
Empfohlene verwandte Tutorials: Python-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWas bedeutet Reichweite in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!