Rozsah Pythonu ()

Typ range () vrací nezměnitelnou posloupnost čísel mezi daným počátečním celým číslem a celým zastavovacím číslem.

range() konstruktor má dvě formy definice:

 rozsah (stop) rozsah (start, stop (, krok))

range () Parametry

range() trvá hlavně tři argumenty, které mají stejné použití v obou definicích:

  • start - celé číslo počínaje od kterého má být vrácena sekvence celých čísel
  • stop - celé číslo, před kterým má být vrácena sekvence celých čísel.
    Rozsah celých čísel končí na stop - 1.
  • step (Volitelné) - celočíselná hodnota, která určuje přírůstek mezi každým celým číslem v sekvenci

Návratová hodnota z rozsahu ()

range() vrací neměnný sekvenční objekt čísel v závislosti na použitých definicích:

rozsah (stop)

  • Vrátí posloupnost čísel začínajících od 0dostop - 1
  • Vrátí prázdnou sekvenci, pokud stopje negativenebo 0.

rozsah (start, stop (, krok))

Návratová hodnota se vypočítá podle následujícího vzorce s danými omezeními:

 r (n) = start + krok * n (pro pozitivní i negativní krok) kde, n> = 0 a r (n) = 0 a r (n)> stop (pro negativní krok)
  • (Pokud ne step) Výchozí hodnota kroku 1. Vrátí posloupnost čísel začínající starta končící na stop - 1.
  • (if stepis zero) Raises a ValueErrorexception
  • (pokud stepje nenulová) Zkontroluje, zda je splněno omezení hodnoty a vrátí posloupnost podle vzorce
    Pokud nesplňuje omezení hodnoty, je vrácena Prázdná posloupnost.

Příklad 1: Jak funguje rozsah v Pythonu?

 # empty range print(list(range(0))) # using range(stop) print(list(range(10))) # using range(start, stop) print(list(range(1, 10)))

Výstup

 () (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (1, 2, 3, 4, 5, 6, 7, 8, 9) 

Poznámka: Rozsah jsme převedli na seznam Pythonu, protože range()vrací objekt podobný generátoru, který tiskne výstup pouze na vyžádání.

K objektu rozsahu vrácenému konstruktorem rozsahu však lze přistupovat také pomocí jeho indexu. Podporuje kladné i záporné indexy.

K objektu rozsahu můžete přistupovat pomocí indexu jako:

 rangeObject (index)

Příklad 2: Vytvořte seznam sudých čísel mezi danými čísly pomocí range ()

 start = 2 stop = 14 step = 2 print(list(range(start, stop, step)))

Výstup

 (2, 4, 6, 8, 10, 12) 

Příklad 3: Jak funguje range () s negativním krokem?

 start = 2 stop = -14 step = -2 print(list(range(start, stop, step))) # value constraint not met print(list(range(start, 14, step)))

Výstup

 (2, 0, -2, -4, -6, -8, -10, -12) () 

Zajímavé články...