Pythoni vahemik () Funktsioon: ujuk, loend, tsükli näidete jaoks

Lang L: none (table-of-contents):

Anonim

Mis on Pythoni vahemik?

Pythoni vahemik () on sisseehitatud funktsioon, mis on saadaval Pythoniga Pythonilt (3.x), ja see annab arvude jada antud algus- ja lõpetusindeksi põhjal. Kui algusindeksit ei anta, loetakse indeksiks 0 ja see suurendab väärtust 1 võrra kuni stop-indeksini.

Näiteks vahemik (5) annab teile väärtused 0,1,2,3,4. Pythoni vahemik () on väga kasulik käsk ja seda kasutatakse enamasti siis, kui peate silmusega kordama.

Selles õpetuses saate teada:

  • Mis on Pythoni vahemik?
  • Süntaks
  • Pythoni vahemik () Funktsioon ja ajalugu
  • Vahemiku () kasutamine
  • Alguse ja peatuse kasutamine vahemikus ()
  • Start, stop ja step kasutamine
  • Vahemikus olevate väärtuste suurendamine positiivse sammu abil.
  • Pöördvahemik: väärtuste vähendamine negatiivse sammu abil.
  • Ujuvate arvude kasutamine Pythoni vahemikus ()
  • For-loopi kasutamine Pythoni vahemikuga ()
  • Pythoni vahemiku () kasutamine loendina
  • Tähemärkide kasutamine püthoni vahemikus ()
  • Vahemiku elementidele juurdepääs
  • Näide: paarisarvude hankimine vahemiku () abil
  • Kahe vahemiku () väljundite ühendamine
  • Range () kasutamine NumPy abil

Süntaks

range(start, stop, step)

Parameetrid

  • algus: (valikuline) algusindeks on täisarv ja kui seda pole antud, on vaikeväärtus 0.
  • stop: stoppindeks otsustab väärtuse, mille juures vahemiku funktsioon peab peatuma. See on vahemiku funktsiooni kohustuslik sisend. Viimane väärtus on alati 1 väiksem kui stoppväärtus.
  • samm: (valikuline). Sammuväärtus on number, mille võrra tuleb järgmise arvu vahemikku suurendada, vaikimisi on see 1.

Tagastusväärtus:

Tagasiväärtus on arvude jada antud alguse ja lõpu indeksist.

Pythoni vahemik () Funktsioon ja ajalugu

Pythoni vahemik () on sisse viidud Pythoni versioonist 3, enne seda oli funktsioon xrange ().

Arvude järjestuse loomiseks kasutatakse nii vahemikku kui ka xrange ().

Vahemiku ja vahemiku () vahe on järgmine:

vahemik () xrange ()
Vahemik () annab arvude järjestuse ja tagastab arvude loendi. Funktsioon xrange () annab generaatorobjekti, mis tuleb väärtuste saamiseks loopida for-loopi.
Vahemik () tagastab loendi. xrange () tagastab generaatori objekti.
Range () meetod kasutab rohkem mälu, kuna tagastatud nimekiri tuleb salvestada võrreldes xrange () -ga. Kuna xrange () tagastab generaatori objekti, ei anna see väärtusi koheselt ja seda tuleb väärtuste saamiseks kasutada for-loopi sees.
Mälu kasutamine on seetõttu suurem, kuna koodi täitmine on aeglane, kui töötate tohutu hulga andmetega. Koodi täitmine on xrange () abil kiirem.

Vahemiku () kasutamine

See näide näitab, kuidas printida väärtused vahemikus 0–9 vahemiku () abil.

Vahemikus kasutatud väärtus on 10, seega on väljundiks 0 1 2 3 4 5 6 7 8 9

Kuna starti ei anta, loetakse algust 0-ks ja viimane väärtus antakse kuni 9. Viimane väärtus on alati 1 väiksem kui antud väärtus, st stop-1.

for i in range(10):print(i, end =" ")

Väljund:

0 1 2 3 4 5 6 7 8 9

Alguse ja peatuse kasutamine vahemikus ()

Koodis on algväärtus 3 ja stoppväärtus 10. Siin on algusindeks 3, nii et numbrite jada algab 3-st kuni stop-väärtuseni. Järjestuse viimane väärtus on 1 väiksem kui peatamisväärtus 10-1 = 9.

for i in range(3, 10):print(i, end =" ")

Väljund:

3 4 5 6 7 8 9

Start, stop ja step kasutamine

Algväärtus on 3, seega algab numbrite jada 3. Peatumise väärtus on 10, seega peatub arvude jada (10-1) ehk 9. Samm on 2, nii et iga jada väärtus on kui astme väärtust ei anta, on sammu väärtus vaikimisi 1.

for i in range(3, 10, 2):print(i, end =" ")

Väljund:

3 5 7 9

Siiani oleme näinud, kuidas vahemiku () funktsioon annab antud stop-väärtuse suurendatud väärtuse. Proovime nüüd näidet vähendatud väärtuse saamiseks antud vahemikus.

Vahemikus olevate väärtuste suurendamine positiivse sammu abil.

Parameetri sammu vahemikus () saab kasutada väärtuste suurendamiseks / vähendamiseks. Vaikimisi on see positiivne väärtus 1. Seega annab see alati suurenenud väärtusi.

Sammuväärtus peab olema positiivne, kui soovite, et kasvavad väärtused oleksid ouput.

for i in range(1, 30, 5):print(i, end =" ")

Väljund:

1 6 11 16 21 26

Pöördvahemik: väärtuste vähendamine negatiivse sammu abil.

Parameetri sammu negatiivse väärtusega vahemikus () saab kasutada vähendatud väärtuste saamiseks. Allpool toodud näites on sammu väärtus negatiivne, seega vähendatakse väljundit antud vahemiku väärtusest.

for i in range(15, 5, -1):print(i, end =" ")

Väljund:

15 14 13 12 11 10 9 8 7 6

Algväärtus on 15, stoppväärtus 5 ja sammu väärtus on negatiivne arv, st -1. Ülaltoodud sisendite vahemiku () korral vähendab funktsioon väärtust 15-st kuni stoppväärtuseni, kuid siin on erinevus viimane väärtus stop + 1.

Ujuvate arvude kasutamine Pythoni vahemikus ()

Töötagem nüüd vahemikus () ujukomaarvude abil.

Näide:

for i in range(10.5):print(i, end =" ")

Ülaltoodud näites oleme peatusväärtusena kasutanud väärtust 10.5.

Väljund on:

Traceback (most recent call last):File "python_range.py", line 1, in for i in range(10.5):TypeError: 'float' object cannot be interpreted as an integer

Python annab vea, kuna vahemiku () funktsioon ei toeta ujukoma numbreid alguse, peatuse ja sammu jaoks.

For-loopi kasutamine Pythoni vahemikuga ()

Selles näites kasutame arvude massiivi ja vaatame, kuidas kasutada massiivi iteratsiooni for-loopi vahemiku () abil

Näide:

arr_list = ['Mysql', 'Mongodb', 'PostgreSQL', 'Firebase']for i in range(len(arr_list)):print(arr_list[i], end =" ")

Väljund:

MysqlMongodb PostgreSQL Firebase

Ülaltoodud näites oleme peatusväärtusena kasutanud len (arr_list). For silmus kordab kuni peatusväärtuseni ehk massiivi pikkuseni ja see saab olema 4, kuna meil on arr_listis neli elementi. Algväärtus on 0 ja samm on 1. Nii et väärtused algavad 0-st ja peatuvad 3-ga, st massiivi -1 pikkus, mis tähendab 4 -1 = 3.

Pythoni vahemiku () kasutamine loendina

Selles näites näete, kuidas kasutada vahemiku väljundit loendina.

Näide:

print(list(range(10)))

Väljund:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Näete, et väljund on loendi vorming. Vahemiku () loopimine ei olnud vajalik ja meetodi list () abil saime väljundi otse teisendada vahemikust loendi vormingusse.

Tähemärkide kasutamine püthoni vahemikus ()

Siiani oleme kasutanud täisarvu püütoni vahemikus (). Samuti oleme näinud, et ujukomaarvu püütoni vahemikus ei toetata. Proovime näha väljundit, mis juhtub, kui kasutame märke.

Näide:

for c in range ('z'):print(c, end =" ")

Väljund:

Traceback (most recent call last):File "python_range.py", line 1, in for c in range ('z'):TypeError: 'str' object cannot be interpreted as an integer

See viskab vea, öeldes, et stringi ei saa tõlgendada täisarvuna.

Tähestike loendi saamiseks saate koodi kohandada ja saada soovitud väljundid, nagu allpool näidatud:

Näide:

def get_alphabets(startletter, stopletter, step):for c in range(ord(startletter.lower()), ord(stopletter.lower()), step):yield chr(c)print(list(get_alphabets("a", "h", 1)))

Väljund:

['a', 'b', 'c', 'd', 'e', 'f', 'g']

Vahemiku elementidele juurdepääs

Vahemiku väärtuste saamiseks võite kasutada for-loopi või kasutada indeksit vahemiku () elementide juurde pääsemiseks.

For-loopi kasutamine

Näide:

for i in range(6):print(i)

Väljund:

012345

Indeksi kasutamine

Indeksit kasutatakse vahemikus, et saada sellel positsioonil saadaolev väärtus. Kui vahemiku väärtus on 5, võite algväärtuse saamiseks kasutada vahemikku (5) [0] ja järgmist väärtuste vahemikku (5) [1] jne.

Näide:

startvalue = range(5)[0]print("The first element in range is = ", startvalue)secondvalue = range(5)[1]print("The second element in range is = ", secondvalue)lastvalue = range(5)[-1]print("The first element in range is = ", lastvalue)

Väljund:

startvalue = range(5)[0]print("The first element in range is = ", startvalue)secondvalue = range(5)[1]print("The second element in range is = ", secondvalue)lastvalue = range(5)[-1]print("The first element in range is = ", lastvalue)

Loendi () kasutamine

See meetod printib kõik elemendid vahemikust (). List () abil tagastatakse elemendid vahemikust () loendi vormingus.

Näide:

print(list(range(10)))

Väljund:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

See annab antud vahemiku loendi väljundi.

Näide: paarisarvude hankimine vahemiku () abil

Range () abil saate sisendina antud vahemikus paarisarvude loendi. Vahemiku () parameetrid on, algus on 2, peatus on 20 ja samm on 2, nii et väärtusi suurendatakse 2-ga ja antakse paarisarvud kuni stop-2-ni.

Näide:

for i in range(2, 20, 2):print(i, end =" ")

Väljund:

2 4 6 8 10 12 14 16 18

Kahe vahemiku () väljundite ühendamine

Selles näites ühendatakse 2 vahemiku () funktsiooni itertooli moodulite ahela () funktsiooni abil.

Näide:

from itertools import chainprint("Merging two range into one")frange =chain(range(10), range(10, 20, 1))for i in frange:print(i, end=" ")

Väljund:

Merging two range into one0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

Range () kasutamine NumPy abil

NumPy moodulil on funktsioon arange (), mis töötab ja annab sarnase väljundi nagu vahemik (). Korraldus () võtab samad parameetrid nagu vahemik ().

Süntaks:

arange(start, stop, step)

NumPy-ga töötamiseks toimige järgmiselt.

1. samm : importige moodul NumPy

import numpy

Inkaseerimine käivitamise ajal annab vea, öeldes, et numpy moodulit ei leitud, peate mooduli installima, nagu on näidatud 2. etapis.

2. samm : installige NumPy

pip install numpy

3. samm : arange () näide NumPy abil

import numpy as npfor i in np.arange(10):print(i, end =" ")

Väljund:

0 1 2 3 4 5 6 7 8 9

Ujuvnumbrid, kasutades NumPy arange'i ()

Vahemiku () abil pole võimalik ujukomajärjestust saada, kuid NumPy arange () abil on see võimalik.

Näide:

Soovitud vahemik on vahemikus 0,5 kuni 1,5. Väärtust suurendatakse 0,2 võrra.

import numpy as npfor i in np.arange(0.5, 1.5, 0.2):print(i, end =" ")

Väljund:

0.5 0.7 0.8999999999999999 1.0999999999999999 1.2999999999999998

Saadud väljund on veidi imelik, mõned ujukarvudest on näidatud 16 kümnendkohaga. See juhtub kümnendkoha ujuvate arvude binaarsesse vormingusse salvestamise keerukuse tõttu. Vajadusel saate ka väärtused ümardada ja piirata neid vajalike kümnendkohtadega.

Kokkuvõte:

  • Pythoni vahemik () on sisseehitatud funktsioon, mis on saadaval Pythoniga Pythonilt (3.x), ja see annab arvude järjestuse antud algus- ja peatusindeksi põhjal. Kui algusindeksit ei anta, loetakse indeks 0-ks ja see suurendab väärtust kuni stop-indeksini.
  • Pythoni vahemik () on sisse viidud Pythoni versioonist 3, enne seda oli funktsioon xrange ().
  • Vahemik () annab arvude järjestuse ja tagastab arvude loendi. Funktsioon xrange () annab generaatorobjekti, mis tuleb väärtuste saamiseks loopida for-loopi.
  • Parameetri sammu vahemikus () saab kasutada väärtuste suurendamiseks / vähendamiseks. Vaikimisi on see positiivne väärtus 1. Seega annab see alati suurenenud väärtusi.
  • Python annab vea ujukomaarvude korral, kuna vahemiku () funktsioon toetab ainult täisarvu.
  • Vahemiku () väärtustele pääseb juurde for-loopi abil, kasutades indeksit ja loendit ()
  • NumPy moodulil on funktsioon arange (), mis töötab ja annab sarnase väljundi nagu vahemik (). Arange () võtab samad parameetrid kui vahemik ().
  • Range () abil on võimalik saada ujukomajärjestus NumPy arange (), mida ei toetata.