Range () tips atgriež nemainīgu skaitļu secību starp norādīto sākuma veselu skaitli līdz apstājas skaitlim.
range()
konstruktoram ir divas definīcijas formas:
diapazons (apstāšanās) diapazons (sākums, apstāšanās (, solis))
diapazons () Parametri
range()
galvenokārt izmanto trīs argumentus, kuriem abās definīcijās ir vienāds pielietojums:
- sākums - vesels skaitlis, no kura jāatgriež veselu skaitļu secība
- stop - vesels skaitlis, pirms kura jāatgriež veselu skaitļu secība.
Veselu skaitļu diapazons beidzas arstop - 1
. - solis (pēc izvēles) - vesela skaitļa vērtība, kas nosaka pieaugumu starp katru veselo skaitli secībā
Atgriešanās vērtība no diapazona ()
range()
atgriež nemaināmu skaitļu secības objektu atkarībā no izmantotajām definīcijām:
diapazons (apstāšanās)
- Atgriež skaitļu secību, sākot no
0
līdzstop - 1
- Atgriež tukšu secību, ja
stop
irnegative
vai0
.
diapazons (sākums, apstāšanās (, solis))
Atgriešanās vērtību aprēķina pēc šādas formulas ar dotajiem ierobežojumiem:
r (n) = sākums + solis * n (gan pozitīvam, gan negatīvam solim), kur n> = 0 un r (n) = 0 un r (n)> stop (negatīvam solim)
- (Ja nē
step
) Solis pēc noklusējuma ir 1. Atgriež skaitļu secību, kas sākas arstart
un beidzas arstop - 1
. - (ja
step
ir nulle) IzvirzaValueError
izņēmumu - (ja
step
vērtība nav nulle) Pārbauda, vai vērtības ierobežojums ir izpildīts, un atgriež secību pēc formulas.
Ja tā neatbilst vērtības ierobežojumam, tiek parādīta tukša secība.
1. piemērs: kā diapazons darbojas Python?
# empty range print(list(range(0))) # using range(stop) print(list(range(10))) # using range(start, stop) print(list(range(1, 10)))
Rezultāts
() (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (1, 2, 3, 4, 5, 6, 7, 8, 9)
Piezīme. Mēs esam pārveidojuši diapazonu Python sarakstā, jo tiek range()
atgriezts ģeneratoram līdzīgs objekts, kas izdrukā izvadi tikai pēc pieprasījuma.
Tomēr diapazona objektam, kuru atdeva diapazona konstruktors, var piekļūt arī pēc tā indeksa. Tas atbalsta gan pozitīvos, gan negatīvos indeksus.
Diapazona objektam var piekļūt pēc rādītāja kā:
rangeObject (rādītājs)
2. piemērs: izveidojiet pāra skaitļa sarakstu starp norādītajiem skaitļiem, izmantojot diapazonu ()
start = 2 stop = 14 step = 2 print(list(range(start, stop, step)))
Rezultāts
(2, 4, 6, 8, 10, 12)
3. piemērs: kā diapazons () darbojas ar negatīvu soli?
start = 2 stop = -14 step = -2 print(list(range(start, stop, step))) # value constraint not met print(list(range(start, 14, step)))
Rezultāts
(2, 0, -2, -4, -6, -8, -10, -12) ()