Python Xrange vs. område

Python Xrange vs. område
Til Python versjon 2.X, det var totalt to underliggende metoder som ble brukt på dette språket for å generere listen over heltall innen et gitt område. De to metodene er listet opp nedenfor:

område ()
xrange ()

Fremover, med den siste versjonen av Python (3 og fremover), ble Range () trukket tilbake, og Xrange () ble deretter endret til rekkevidde (). Nå i Python 3 er det bare en funksjon for denne metoden, jeg.e., område (). I Python 3 er rekkevidden () -funksjonen bare en annen måte å implementere den eldre versjonen av Xrange () av ​​Python 2.x. Her vil vi relatere de to.

Xrange ()

Xrange () brukes til å lage en tallsekvens som område () -funksjonen.

Syntaks

Syntaksen som brukes til å definere xrange () er:

xrange (start, slutt, trinn)

Funksjonen brukes til å definere antallet tall fra (er inkludert) til slutten (er ikke inkludert).

Parametere

Følgende er listen over nødvendige parametere:

Start: Startposisjon for tallsekvensen
Slutt: Sluttposisjonen til tallsekvensen
Trinn: Skillet mellom to påfølgende tall i serien.

Eksempler

I det følgende eksemplet vil vi sjekke måtene å definere Xrange.

Her vil vi bare spesifisere sluttposisjonen.

Så sluttverdien er satt til 5, og så får vi skrevet ut sluttposisjonen, som vist nedenfor:

Nå vil vi se metoden for å ringe rekkevidde, syntaks for å ringe enden vil være:

>>> x = xrange (slutt)

Så får vi det trykt.

Vi vil få rekkevidden i utgangen, som vist ovenfor.

Nå vil vi definere både start- og sluttpunktene. Her er utgangspunktet 2, og sluttpunktet er 5. Vi trykket deretter start- og sluttposisjonene, som vist nedenfor:

Etter dette vil vi lage en sekvens av tallene fra start- og sluttpunktene, i.e., 2 til 5.

>>> y = xrange (start, slutt)

Til slutt vil vi sjekke metoden for å definere utgangspunktet, trinnet og sluttpunktet. Når vi har definert alle tre parametrene; Vi vil kalle dem lik metoden vist nedenfor:

For å ringe Xrange for disse tre parametrene, bruker vi følgende syntaks:

>>> z = xrange (start, trinn, slutt)

Område ()

Rekkevidde () brukes til å lage en liste og er en raskere funksjon for flere iterasjoner.

Syntaks

Følgende syntaks brukes:

>>> rekkevidde (start, slutt, trinn)

Eksempler

For det første tilfellet vil vi definere sluttverdien. Syntaksen som brukes til dette er:

>>> rekkevidde (slutt)

Så i eksemplet gitt nedenfor, vil vi bruke 3 som rekkevidden til sluttverdien. Når vi får den skrevet ut, returnerer det verdiene, ekskluderer sluttverdien.

I det påfølgende eksemplet bruker vi eksemplet med å beskrive start- og sluttpunktet. Verdien begynner fra 1 og slutter på 10 (ved å ekskludere den). Utgangspunktet er inkludert, men sluttpunktet er utelatt. Syntaksen ligner den som er gitt nedenfor:

>>> rekkevidde (start, slutt)

Så vi definerer utgangspunktet og deretter sluttpunktet, som er henholdsvis 1 og 10.

Nå, i det påfølgende eksemplet, vil vi ha trinnfunksjonen. Funksjonen som definerer gapet mellom to punkter i sekvensen. Verdien begynner fra 0 og slutter på 10 (ved å ekskludere den). Syntaksen som brukes er gitt nedenfor:

>>> rekkevidde (start, trinn, slutt)

Eksemplet er gitt nedenfor, der 2 er trinnverdien.

Fordeler

område ()

Det er raskere hvis iterasjonene skal gjøres flere ganger. rekkevidde () har bare sanntids heltallsobjektverdier. Når det gjelder hukommelsen, utfører den ikke godt.

xrange ()

Det må gjenskape heltallobjektet hver gang. xrange () er ikke siden det ikke støtter skiver og listemetoder. xrange () tar samme mengde minne. Så når det gjelder ytelse, spesielt når brukere itererer over en større rekkevidde, presterer Xrange () mye bedre.

Likheter mellom Python 2 og Python 3 Range og Xrange

Python 2s Xrange har en beskrivende representasjon i form av strengen, som er veldig lik Python 3s rekkevidde objektverdi.

Verdien av xrange () i Python 2 er iterable, så er det også rang () i Python 3.

xrange () og rekkevidde () begge har et trinn-, slutt- og utgangspunktverdier. I begge tilfellene er trinn et valgfritt felt, det samme er startverdien.

Både Xrange of Python 2 og 3 støttelengde som kan indekseres i fremover eller bakover rekkefølge. Her er et eksempel på det samme:

Ulikhet mellom rekkevidde () og xrange ()

Siden Xrange () bare evaluerer generatorobjektet med verdiene som trengs av den late evalueringen, er det raskere å implementere over rekkevidden (). Range () hjelper til.

Variabelen som brukes i området () -funksjonen lagrer verdien av rekkevidde og tar dermed mye minne sammenlignet med Xrange () som bare tar noe av minnet på grunn av variablene. rekkevidde () Returnerer et områdeobjekt mens, xrange () returnerer et generatorobjekt.

Området (1, 7, 2) -funksjonen vil returnere utgangen [1, 3, 5] og inngangs Xrange (1, 7, 2) vil produsere utgangen [1, 3, 5]. Slik kan vi anta at de er like i mønsteret.

Konklusjon

rekkevidde () og xrange () har begge forskjellige egenskaper, som diskutert ovenfor. Alle sammenligninger nevnt i denne opplæringen, sammen med eksemplene, vil være nyttige for leserne å velge bedre sin foretrukne metode basert på deres krav.