Der Typ range () gibt eine unveränderliche Folge von Zahlen zwischen der angegebenen Start-Ganzzahl und der Stopp-Ganzzahl zurück.
range()
Konstruktor hat zwei Formen der Definition:
Bereich (Stopp) Bereich (Start, Stopp (, Schritt))
range () Parameter
range()
nimmt hauptsächlich drei Argumente an, die in beiden Definitionen dieselbe Verwendung haben:
- start - Ganzzahl, ab der die Folge von Ganzzahlen zurückgegeben werden soll
- stop - Ganzzahl, vor der die Folge von Ganzzahlen zurückgegeben werden soll.
Der Bereich der ganzen Zahlen endet beistop - 1
. - step (Optional) - Ganzzahliger Wert, der das Inkrement zwischen jeder Ganzzahl in der Sequenz bestimmt
Rückgabewert aus Bereich ()
range()
Gibt abhängig von den verwendeten Definitionen ein unveränderliches Sequenzobjekt mit Zahlen zurück:
Reichweite (Stopp)
- Gibt eine Folge von Zahlen zurück, die von
0
bis beginnenstop - 1
- Gibt eine leere Sequenz , wenn
stop
istnegative
oder0
.
Bereich (Start, Stopp (, Schritt))
Der Rückgabewert wird nach der folgenden Formel mit den angegebenen Einschränkungen berechnet:
r (n) = Start + Schritt * n (sowohl für positiven als auch für negativen Schritt) wobei n> = 0 und r (n) = 0 und r (n)> Stopp (für negativen Schritt)
- (Wenn nein
step
) Schritt ist standardmäßig 1. Gibt eine Folge von Zahlen zurück, die von beginnenstart
und bei endenstop - 1
. - (wenn
step
Null ist) Löst eineValueError
Ausnahme aus - (wenn
step
ungleich Null) Überprüft, ob die Wertebeschränkung erfüllt ist, und gibt eine Sequenz gemäß der Formel zurück.
Wenn sie die Wertebeschränkung nicht erfüllt, wird eine leere Sequenz zurückgegeben.
Beispiel 1: Wie funktioniert der Bereich in Python?
# empty range print(list(range(0))) # using range(stop) print(list(range(10))) # using range(start, stop) print(list(range(1, 10)))
Ausgabe
() (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (1, 2, 3, 4, 5, 6, 7, 8, 9)
Hinweis: Wir haben den Bereich in eine Python-Liste konvertiert, da range()
ein generatorähnliches Objekt zurückgegeben wird, das die Ausgabe nur bei Bedarf druckt.
Auf das vom Bereichskonstruktor zurückgegebene Bereichsobjekt kann jedoch auch über seinen Index zugegriffen werden. Es unterstützt sowohl positive als auch negative Indizes.
Sie können über den Index wie folgt auf das Bereichsobjekt zugreifen:
rangeObject (index)
Beispiel 2: Erstellen Sie mit range () eine Liste mit geraden Zahlen zwischen den angegebenen Zahlen.
start = 2 stop = 14 step = 2 print(list(range(start, stop, step)))
Ausgabe
(2, 4, 6, 8, 10, 12)
Beispiel 3: Wie funktioniert range () mit negativem Schritt?
start = 2 stop = -14 step = -2 print(list(range(start, stop, step))) # value constraint not met print(list(range(start, 14, step)))
Ausgabe
(2, 0, -2, -4, -6, -8, -10, -12) ()