Il tipo range () restituisce una sequenza immutabile di numeri tra il numero intero iniziale specificato e il numero intero finale.
range()
costruttore ha due forme di definizione:
range (stop) range (start, stop (, step))
range () Parametri
range()
prende principalmente tre argomenti che hanno lo stesso uso in entrambe le definizioni:
- inizio - numero intero a partire dal quale deve essere restituita la sequenza di numeri interi
- fermare
L'intervallo di numeri interi termina astop - 1
. - step (Opzionale) - valore intero che determina l'incremento tra ogni numero intero nella sequenza
Valore restituito da intervallo ()
range()
restituisce un oggetto sequenza immutabile di numeri a seconda delle definizioni utilizzate:
range (stop)
- Restituisce una sequenza di numeri che inizia da
0
astop - 1
- Restituisce una sequenza vuota se
stop
ènegative
o0
.
range (start, stop (, step))
Il valore restituito è calcolato dalla seguente formula con i vincoli dati:
r (n) = start + step * n (per step sia positivo che negativo) dove, n> = 0 er (n) = 0 er (n)> stop (per step negativo)
- (In caso negativo
step
) Il valore predefinito di Step è 1. Restituisce una sequenza di numeri che iniziano dastart
e finiscono instop - 1
. - (se
step
è zero) SollevaValueError
un'eccezione - (se
step
è diverso da zero) Controlla se il vincolo di valore è soddisfatto e restituisce una sequenza secondo la formula
Se non soddisfa il vincolo di valore, viene restituita la sequenza vuota .
Esempio 1: come funziona l'intervallo in Python?
# empty range print(list(range(0))) # using range(stop) print(list(range(10))) # using range(start, stop) print(list(range(1, 10)))
Produzione
() (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (1, 2, 3, 4, 5, 6, 7, 8, 9)
Nota: abbiamo convertito l'intervallo in un elenco Python, poiché range()
restituisce un oggetto simile a un generatore che stampa l'output solo su richiesta.
Tuttavia, è possibile accedere all'oggetto intervallo restituito dal costruttore dell'intervallo anche tramite il suo indice. Supporta indici sia positivi che negativi.
È possibile accedere all'oggetto intervallo tramite indice come:
rangeObject (indice)
Esempio 2: creare un elenco di numeri pari tra i numeri forniti utilizzando range ()
start = 2 stop = 14 step = 2 print(list(range(start, stop, step)))
Produzione
(2, 4, 6, 8, 10, 12)
Esempio 3: come funziona range () con il passaggio negativo?
start = 2 stop = -14 step = -2 print(list(range(start, stop, step))) # value constraint not met print(list(range(start, 14, step)))
Produzione
(2, 0, -2, -4, -6, -8, -10, -12) ()