Range () -typen returnerar en oföränderlig sekvens av siffror mellan det givna startheltalet och stoppheltalet.
range()
konstruktören har två former av definition:
intervall (stopp) intervall (start, stopp (, steg))
intervall () Parametrar
range()
tar huvudsakligen tre argument med samma användning i båda definitionerna:
- start - heltal från vilken sekvensen av heltal ska returneras
- stop - heltal innan sekvensen av heltal ska returneras.
Utbudet av heltal slutar vidstop - 1
. - steg (valfritt) - heltal som bestämmer inkrementet mellan varje heltal i sekvensen
Returvärde från intervall ()
range()
returnerar ett oföränderligt sekvensobjekt med nummer beroende på definitionerna som används:
intervall (stopp)
- Returnerar en sekvens av siffror som börjar från
0
tillstop - 1
- Returnerar en tom sekvens om det
stop
ärnegative
eller0
.
intervall (start, stopp (, steg))
Returvärdet beräknas med följande formel med angivna begränsningar:
r (n) = start + steg * n (för både positivt och negativt steg) där, n> = 0 och r (n) = 0 och r (n)> stopp (för negativt steg)
- (Om nej
step
) Steg är som standard 1. Returnerar en sekvens av siffror som börjar frånstart
och slutar vidstop - 1
. - (om
step
är noll) Tar upp ettValueError
undantag - (om inte
step
är noll) Kontrollerar om värdebegränsningen uppfylls och returnerar en sekvens enligt formeln.
Om den inte uppfyller värdebegränsningen returneras Tom sekvens.
Exempel 1: Hur räckvidd fungerar i Python?
# empty range print(list(range(0))) # using range(stop) print(list(range(10))) # using range(start, stop) print(list(range(1, 10)))
Produktion
() (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (1, 2, 3, 4, 5, 6, 7, 8, 9)
Obs! Vi har konverterat intervallet till en Python-lista, som range()
returnerar ett generatorliknande objekt som bara skriver ut produktionen på begäran.
Emellertid kan intervallobjektet som returneras av områdekonstruktören också nås genom dess index. Den stöder både positiva och negativa index.
Du kan komma åt intervallobjektet med index som:
rangeObject (index)
Exempel 2: Skapa en lista med jämnt nummer mellan de angivna numren med hjälp av intervall ()
start = 2 stop = 14 step = 2 print(list(range(start, stop, step)))
Produktion
(2, 4, 6, 8, 10, 12)
Exempel 3: Hur intervall () fungerar med negativt steg?
start = 2 stop = -14 step = -2 print(list(range(start, stop, step))) # value constraint not met print(list(range(start, 14, step)))
Produktion
(2, 0, -2, -4, -6, -8, -10, -12) ()