område ()
xrange ()
Fremover, med den siste versjonen av Python (3 og utover), ble rekkevidde () trukket tilbake, og xrange () ble deretter endret til område (). Nå i Python 3 er det bare en funksjon for denne metoden, jeg.e., område (). I Python 3 er funksjonen range () 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 tallrekke som funksjonen range ().
Syntaks
Syntaksen som brukes til å definere xrange () er:
xrange (start, slutt, trinn)Funksjonen brukes til å definere rekkevidden av tall som starter fra (er inkludert) til slutten (er ikke inkludert).
Parametere
Følgende er listen over nødvendige parametere:
Start: Startposisjon for nummerrekkefølgen
Slutt: Sluttposisjon for tallrekkefølgen
Trinn: Skillet mellom to påfølgende tall i serien.
Eksempler
I det følgende eksemplet vil vi sjekke måtene å definere xrange på.
Her vil vi bare spesifisere sluttposisjonen.
Så, sluttverdien er satt til 5, og deretter får vi sluttposisjonen skrevet ut, som vist nedenfor:
Nå vil vi se metoden for å ringe rekkevidde, syntaksen for å ringe slutten vil være:
>>> x = xrange (slutt)Så får vi den skrevet ut.
Vi får rekkevidden i utdata, som vist ovenfor.
Nå skal vi definere både start- og sluttpunktene. Her er utgangspunktet 2, og sluttpunktet er 5. Vi skrev deretter ut 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 ut metoden for å definere startpunktet, trinnet og sluttpunktet. Når vi har definert alle tre parametrene; vi vil kalle dem lik metoden vist nedenfor:
Nå, for å kalle xrange for disse tre parametrene, bruker vi følgende syntaks:
>>> z = xrange (start, trinn, slutt)
Område ()
Range () 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 vil vi definere sluttverdien. Syntaksen som brukes til dette er:
>>> rekkevidde (slutt)Så i eksemplet nedenfor, bruker vi 3 som områdets sluttverdi. Når vi får den skrevet ut, returnerer den verdiene, unntatt sluttverdien.
I det påfølgende eksemplet bruker vi eksemplet på å beskrive start- og sluttpunktet. Verdien begynner fra 1 og slutter kl 10 (ved å ekskludere den). Startpunktet er inkludert, men sluttpunktet er utelatt. Syntaksen ligner den som er gitt nedenfor:
>>> rekkevidde (start, slutt)Så vi definerer startpunktet 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 ved 10 (ved å ekskludere den). Syntaksen som er brukt er gitt nedenfor:
>>> rekkevidde (start, trinn, slutt)Eksemplet er gitt nedenfor, hvor 2 er trinnverdien.
Fordeler
område ()
Det er raskere hvis gjentakelsene skal gjøres flere ganger. rekkevidde () har bare sanntids heltallobjektverdier. Når det gjelder minne, fungerer det ikke bra.
xrange ()
Det må gjenskape heltalsobjektet hver gang. xrange () er ikke siden den ikke støtter stykker og listemetoder. xrange () tar like mye minne. Så når det gjelder ytelse, spesielt når brukere itererer over en større verdi, yter xrange () mye bedre.
Likheter mellom Python 2 og Python 3 varierer og xrange
Python 2s xrange har en beskrivende representasjon i form av strengen, som er veldig lik Python 3s rekkeviddeobjektverdi.
Verdien av xrange () i Python 2 er iterabel, det er også rang () i Python 3.
xrange () og range () har begge trinn-, slutt- og startpunktverdier. I begge tilfeller er trinn et valgfritt felt, så også startverdien.
Både xrange av Python 2 og 3 støtter lengde som kan indekseres i forover eller omvendt rekkefølge. Her er et eksempel på det samme:
Ulikheter mellom område () og xrange ()
Siden xrange () bare vurderer generatorobjektet med verdiene som trengs av lat evaluering, er det raskere å implementere over området (). range () hjelper med å returnere listen og har alle objekter som kan brukes, mens xrange () returnerer objektene som er knyttet til en liste og ikke kan brukes på dem, slik at vi kan telle det som en ulempe.
Variabelen som brukes i rekkevidden () -funksjonen lagrer verdien av rekkevidden og tar dermed mye minne sammenlignet med xrange () som bare tar noe av minnet på grunn av variablene. range () returnerer et range-objekt mens xrange () returnerer et generator-objekt.
Området (1, 7, 2) -funksjonen vil returnere utgangen [1, 3, 5] og inngangen xrange (1, 7, 2) vil gi utgangen [1, 3, 5]. Slik kan vi anta at de er like i mønsteret.
Konklusjon
range () og xrange () har begge forskjellige egenskaper, som diskutert ovenfor. Alle sammenligninger som er nevnt i denne veiledningen, sammen med eksemplene, vil være nyttige for leserne å bedre velge deres foretrukne metode basert på deres krav.