„Python“ diapazonas ()

Range () tipas grąžina nekintamą skaičių seką nuo nurodyto pradžios skaičiaus iki stop skaičiaus.

range() konstruktorius turi dvi apibrėžimo formas:

 diapazonas (sustabdyti) diapazonas (pradžia, sustabdymas (, žingsnis))

diapazonas () Parametrai

range() daugiausia vartojami trys argumentai, naudojami vienodai abiejuose apibrėžimuose:

  • pradžia - sveikasis skaičius, nuo kurio turi būti grąžinta sveikųjų skaičių seka
  • stop - sveikasis skaičius, prieš kurį turi būti grąžinta sveikųjų skaičių seka.
    Sveikųjų skaičių diapazonas baigiasi stop - 1.
  • žingsnis (pasirinktinai) - sveiko skaičiaus reikšmė, kuri nustato prieaugį tarp kiekvieno eilės skaičiaus

Grąžinimo vertė iš diapazono ()

range() grąžina nekintamą skaičių sekos objektą, priklausomai nuo naudojamų apibrėžimų:

diapazonas (stop)

  • Grąžina skaičių seka pradedant nuo 0įstop - 1
  • Pateikia tuščią seką, jei stopyra negativearba 0.

diapazonas (pradžia, sustabdymas (, žingsnis))

Grąžinimo vertė apskaičiuojama pagal šią formulę su pateiktais apribojimais:

 r (n) = pradžia + žingsnis * n (tiek teigiamam, tiek neigiamam žingsniui), kur n> = 0 ir r (n) = 0 ir r (n)> sustojimas (neigiamam žingsniui)
  • (Jei ne step) Numatytasis žingsnis yra 1. Grąžina skaičių seką, prasidedančią startir besibaigiančią stop - 1.
  • (jei stepyra nulis) Iškelia ValueErrorišimtį
  • (jei stepnėra nulis) Patikrina, ar įvykdytas vertės apribojimas, ir pateikia seką pagal formulę.
    Jei ji neatitinka vertės apribojimo, grąžinama tuščia seka.

1 pavyzdys: Kaip diapazonas veikia „Python“?

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

Rezultatas

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

Pastaba: Mes konvertuojome diapazoną į „Python“ sąrašą, nes range()pateikiamas į generatorių panašus objektas, kuris spausdina išvestį tik pagal poreikį.

Tačiau diapazono konstruktoriaus grąžintą diapazono objektą taip pat galima pasiekti pagal jo indeksą. Tai palaiko ir teigiamus, ir neigiamus indeksus.

Galite pasiekti diapazono objektą pagal indeksą kaip:

 rangeObject (rodyklė)

2 pavyzdys: sukurkite lyginių skaičių sąrašą tarp nurodytų skaičių naudodami diapazoną ()

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

Rezultatas

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

3 pavyzdys: Kaip diapazonas () veikia su neigiamu žingsniu?

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

Rezultatas

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

Įdomios straipsniai...