Typ range () vráti nemennú postupnosť čísel medzi daným začiatočným celým číslom a koncovým celým číslom.
range()
konštruktor má dve formy definície:
rozsah (stop) rozsah (štart, stop (, krok))
rozsah () parametre
range()
trvá hlavne tri argumenty, ktoré majú rovnaké použitie v oboch definíciách:
- start - celé číslo, od ktorého sa má vrátiť postupnosť celých čísel
- stop - celé číslo, pred ktoré sa má vrátiť postupnosť celých čísel.
Rozsah celých čísel končí nastop - 1
. - step (Voliteľné) - celočíselná hodnota, ktorá určuje prírastok medzi každým celým číslom v poradí
Návratová hodnota z rozsahu ()
range()
vráti nemenný objekt sekvencie čísel v závislosti od použitých definícií:
rozsah (stop)
- Vráti postupnosť čísel začínajúcich od
0
dostop - 1
- Vráti prázdnu sekvenciu, ak
stop
jenegative
alebo0
.
rozsah (štart, stop (, krok))
Návratová hodnota sa počíta podľa nasledujúceho vzorca s danými obmedzeniami:
r (n) = štart + krok * n (pre pozitívny aj negatívny krok) kde, n> = 0 a r (n) = 0 a r (n)> stop (pre negatívny krok)
- (Ak nie
step
) Predvolený krok je 1. Vráti postupnosť čísel začínajúcichstart
a končiacich číslomstop - 1
. - (ak
step
je nula) ZvyšujeValueError
výnimku - (ak
step
je nenulová) Skontroluje, či je splnené obmedzenie hodnoty a vráti postupnosť podľa vzorca
Ak nespĺňa obmedzenie hodnoty, vráti sa Prázdna postupnosť.
Príklad 1: Ako funguje rozsah v Pythone?
# empty range print(list(range(0))) # using range(stop) print(list(range(10))) # using range(start, stop) print(list(range(1, 10)))
Výkon
() (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (1, 2, 3, 4, 5, 6, 7, 8, 9)
Poznámka: Rozsah sme previedli na zoznam Python, pretože range()
vracia objekt podobný generátoru, ktorý tlačí iba výstup na požiadanie.
K objektu rozsahu vrátenému konštruktorom rozsahu je však možné získať prístup aj z jeho indexu. Podporuje pozitívne aj negatívne indexy.
K objektu rozsahu môžete získať prístup pomocou indexu ako:
rangeObject (index)
Príklad 2: Vytvorte zoznam párnych čísel medzi danými číslami pomocou rozsahu ()
start = 2 stop = 14 step = 2 print(list(range(start, stop, step)))
Výkon
(2, 4, 6, 8, 10, 12)
Príklad 3: Ako funguje rozsah () s negatívnym krokom?
start = 2 stop = -14 step = -2 print(list(range(start, stop, step))) # value constraint not met print(list(range(start, 14, step)))
Výkon
(2, 0, -2, -4, -6, -8, -10, -12) ()