Python xrange vs. intervall

Python Xrange Vs Range



Fram till Python version 2.x användes totalt två underliggande metoder på detta språk för att generera listan över heltal inom ett angivet intervall. De två metoderna listas nedan:

intervall ()
xrange ()







Framåt, med den senaste versionen av Python (3 och framåt), togs område () tillbaka och xrange () ändrades sedan till intervall (). Nu i Python 3 finns det bara en funktion för denna metod, det vill säga intervall (). I Python 3 är funktionen range () bara ett annat sätt att implementera den äldre versionen av xrange () av ​​python 2.x. Här kommer vi att relatera de två.



Xrange ()

Xrange () används för att skapa en nummersekvens som funktionen intervall ().



Syntax

Syntaxen som används för att definiera xrange () är:





xrange(Start,slutet,steg)

Funktionen används för att definiera talintervallet från (ingår) till slutet (ingår inte).

Parametrar

Följande är listan över nödvändiga parametrar:



& emsp; Start: Startposition för nummersekvensen
& emsp; End: Slutposition för nummersekvensen
& emsp; Steg: Skillnaden mellan två nummer i rad i serien.

Exempel

I följande exempel kommer vi att kontrollera sätten att definiera xrange.

Här kommer vi bara att specificera slutpositionen.

Så, slutvärdet är satt till 5, och sedan får vi slutpositionen utskriven, som visas nedan:

Nu kommer vi att se metoden för att ringa intervall, syntaxen för samtalets slut kommer att vara:

>>>x= xrange(slutet)

Då får vi trycka det.

Vi kommer att få intervallet i utmatningen, som visas ovan.

Nu kommer vi att definiera både start- och slutpunkter. Här är startpunkten 2 och slutpunkten är 5. Vi skrev sedan ut start- och slutpositionerna, enligt nedan:

Efter detta kommer vi att skapa en sekvens av siffrorna från våra start- och slutpunkter, dvs 2 till 5.

>>>och= xrange(Start,slutet)

Slutligen kommer vi att kolla in metoden för att definiera startpunkten, steget och slutpunkten. När vi har definierat alla tre parametrarna; vi kommer att kalla dem liknande metoden som visas nedan:

För att anropa xrange för dessa tre parametrar använder vi följande syntax:

>>>Med= xrange(Start,steg,slutet)

Område ()

Range () används för att skapa en lista och är en snabbare funktion för flera iterationer.

Syntax

Följande syntax används:

>>> räckvidd(Start,slutet,steg)

Exempel

För det första fallet kommer vi att definiera slutvärdet. Syntaxen som används för detta är:

>>> räckvidd(slutet)

Så i exemplet nedan kommer vi att använda 3 som intervallets slutvärde. När vi får det tryckt returnerar det värdena, exklusive slutvärdet.

I det efterföljande exemplet använder vi exemplet med att beskriva start- och slutpunkten. Värdet börjar från 1 och slutar vid 10 (genom att utesluta det). Startpunkten ingår, men slutpunkten utelämnas. Syntaxen liknar den som ges nedan:

>>> räckvidd (Start,slutet)

Så definierar vi startpunkten och sedan slutpunkten, som är 1 respektive 10.

Nu, i det efterföljande exemplet, kommer vi att ha stegfunktionen. Funktionen som definierar gapet mellan två punkter i sekvensen. Värdet börjar från 0 och slutar vid 10 (genom att utesluta det). Den syntax som används ges nedan:

>>> räckvidd (Start,steg,slutet)

Exemplet ges nedan, där 2 är stegvärdet.

Fördelar

intervall ()

Det är snabbare om iterationerna ska göras flera gånger. range () har bara realtidens heltalsobjektvärden. När det gäller minne fungerar det inte bra.

xrange ()

Det måste återskapa heltalsobjektet varje gång. xrange () är inte eftersom det inte stöder segment och listmetoder. xrange () tar lika mycket minne. Så när det gäller prestanda, särskilt när användare itererar över ett större intervallvärde, presterar xrange () mycket bättre.

Likheter mellan Python 2 och Python 3 -intervall och xrange

Python 2s xrange har en beskrivande representation i form av strängen, som är mycket lik Python 3: s intervallobjektvärde.

Värdet av xrange () i Python 2 är iterabelt, så det ringde () i Python 3.

xrange () och intervall () har båda steg-, slut- och startpunktsvärden. I båda fallen är steg ett valfritt fält, så är startvärdet.

Både xrange av Python 2 och 3 stöder längd som kan indexeras i framåt eller bakåt ordning. Här är ett exempel på samma sak:

Skillnader mellan intervall () och xrange ()

Eftersom xrange () endast utvärderar generatorobjektet med de värden som behövs för lat utvärdering, är det snabbare att implementera över intervallet (). range () hjälper till att returnera listan och har alla objekt som kan användas, medan xrange () returnerar objekten som är associerade med en lista och kan inte tillämpas på dem så att vi kan räkna det som en nackdel.

Variabeln som används i intervallet () -funktionen lagrar intervallets värde och tar därmed mycket minne jämfört med xrange () som bara tar en del av minnet på grund av variablerna. range () returnerar ett intervallobjekt medan xrange () returnerar ett generatorobjekt.

Funktionen intervall (1, 7, 2) returnerar utgången [1, 3, 5] och ingången xrange (1, 7, 2) kommer att producera utgången [1, 3, 5]. Det är så vi kan anta att de liknar mönstret.

Slutsats

intervall () och xrange () har båda olika egenskaper, som diskuterats ovan. Alla jämförelser som nämns i denna handledning, tillsammans med exemplen, kommer att vara till hjälp för läsarna att bättre välja sin föredragna metod utifrån deras krav.