Python

Python Xrange vs. alue

Python Xrange vs. alue
Till Python-versioon 2.x, tällä kielellä käytettiin yhteensä kahta taustalla olevaa menetelmää kokonaislukujen luettelon luomiseksi annetulla alueella. Kaksi menetelmää on lueteltu alla:

alue ()
xrange ()

Kun siirryt eteenpäin, uusimmalla Python-versiolla (3 eteenpäin) alue () peruutettiin ja xrange () muutettiin sitten alueeksi (). Nyt Python 3: ssa on vain yksi toiminto tälle menetelmälle, ts.e., alue (). Python 3: ssa alue () -funktio on vain yksi tapa toteuttaa python 2: n xrange () vanhempi versio.x. Tässä me yhdistämme nämä kaksi.

Xrange ()

Xrange () -toimintoa käytetään luomaan numerosarja kuten range () -funktio.

Syntaksi

Xrange (): n määrittelyssä käytetty syntaksi on:

x-alue (alku, loppu, vaihe)

Funktiota käytetään määrittelemään numeroalue alkaen (sisältyy) loppuun (ei sisälly).

Parametrit

Seuraavassa on luettelo vaadituista parametreista:

Alku: Numerosarjan aloitusasento
Loppu: Numerosarjan loppupiste
Vaihe: Ero sarjan kahden peräkkäisen numeron välillä.

Esimerkkejä

Seuraavassa esimerkissä tarkistamme tapoja määritellä x-alue.

Tässä määritetään vain loppupiste.

Joten loppuarvoksi asetetaan 5, ja sitten tulostetaan loppuasema, kuten alla on esitetty:

Näemme nyt menetelmän, jolla soitetaan alue, syntaksin puhelun loppu on:

>>> x = x-alue (loppu)

Sitten saamme sen painettua.

Saamme ulostulon alueen, kuten yllä on esitetty.

Nyt määritämme sekä lähtö- että päätepisteet. Tässä lähtökohta on 2 ja loppupiste on 5. Tulostimme sitten alku- ja loppupisteet alla olevan kuvan mukaisesti:

Tämän jälkeen luomme sekvenssin numeroista lähtö- ja loppupisteistämme, ts.e., 2 - 5.

>>> y = x-alue (alku, loppu)

Lopuksi tutustumme lähtökohdan, vaiheen ja loppupisteen määrittelymenetelmään. Kun olemme määrittäneet kaikki kolme parametria; kutsumme heitä samanlaiseksi kuin alla esitetty menetelmä:

Nyt, kun kutsumme näiden kolmen parametrin xrange-aluetta, käytämme seuraavaa syntaksia:

>>> z = x-alue (alku, vaihe, loppu)

Alue ()

Aluetta () käytetään luettelon luomiseen ja se on nopeampi toiminto useille iteraatioille.

Syntaksi

Seuraavaa syntaksia käytetään:

>>> alue (alku, loppu, vaihe)

Esimerkkejä

Ensimmäisessä tapauksessa määritämme loppuarvon. Tätä varten käytetty syntaksi on:

>>> alue (loppu)

Joten alla olevassa esimerkissä käytämme 3 alueen loppuarvona. Kun saamme sen tulostettua, se palauttaa arvot ilman loppuarvoa.

Seuraavassa esimerkissä käytämme esimerkkiä aloitus- ja loppupisteen kuvaamisesta. Arvo alkaa 1: stä ja päättyy klo 10 (sulkemalla se pois). Lähtökohta sisältyy, mutta loppupiste jätetään pois. Syntaksi on samanlainen kuin alla annettu:

>>> alue (alku, loppu)

Joten määritämme aloituskohdan ja sitten loppupisteen, joka on vastaavasti 1 ja 10.

Nyt seuraavassa esimerkissä meillä on vaihefunktio. Toiminto, joka määrittää minkä tahansa kahden sekvenssin välisen aukon. Arvo alkaa 0: sta ja päättyy klo 10 (sulkemalla se pois). Käytetty syntakse on annettu alla:

>>> alue (alku, vaihe, loppu)

Alla on esimerkki, jossa 2 on askelarvo.

Edut

alue ()

Se on nopeampi, jos iteraatiot tehdään useita kertoja. range () sisältää vain reaaliaikaiset kokonaislukuobjektiarvot. Muistin suhteen se ei toimi hyvin.

xrange ()

Sen on luotava kokonaislukuobjekti joka kerta. xrange () ei ole, koska se ei tue viipaleita ja luettelomenetelmiä. xrange () vie saman määrän muistia. Joten mitä tulee suorituskykyyn, varsinkin kun käyttäjät iteroivat suuremmalla aluearvolla, xrange () toimii paljon paremmin.

Python 2: n ja Python 3: n välillä on yhtäläisyyksiä ja xrange

Python 2: n xrange-kentässä on kuvaava merkkijono, joka on hyvin samanlainen kuin Python 3: n alueobjektin arvo.

Xrange (): n arvo Python 2: ssa on iteroituva, joten se on ((): Python 3: ssa.

xrange (): lla ja range (): lla on molemmat vaihe-, loppu- ja aloituspistearvot. Molemmissa tapauksissa vaihe on valinnainen kenttä, samoin aloitusarvo.

Sekä Python 2: n että 3: n väli tukee pituutta, joka voidaan indeksoida eteen- tai taaksepäin. Tässä on esimerkki samasta:

Alueiden () ja x-alueiden () väliset erot

Koska xrange () arvioi vain generaattoriobjektin laiskan arvioinnin edellyttämillä arvoilla, se on nopeampi toteuttaa alueella (). range () auttaa palauttamaan luettelon ja sisältää kaikki käytettävät objektit, kun taas xrange () palauttaa luetteloon liittyvät objektit, eikä sitä voida käyttää niihin, jotta voimme laskea sen haitaksi.

Alue () -toiminnossa käytetty muuttuja tallentaa alueen arvon ja vie siten paljon muistia verrattuna xrange () -arvoon, joka vie vain osan muistista muuttujien vuoksi. range () palauttaa alueobjektin, kun taas xrange () palauttaa generaattoriobjektin.

Alue (1, 7, 2) -toiminto palauttaa lähdön [1, 3, 5] ja tulon x-alue (1, 7, 2) tuottaa lähdön [1, 3, 5]. Siten voimme olettaa, että ne ovat samanlaisia ​​kuviossa.

Johtopäätös

vaihteluvälillä () ja xrange () on molemmat erilaiset ominaisuudet, kuten edellä keskusteltiin. Kaikki tässä opetusohjelmassa mainitut vertailut yhdessä esimerkkien kanssa auttavat lukijoita valitsemaan paremmin haluamansa menetelmän vaatimustensa perusteella.

How to change Left & Right mouse buttons on Windows 10 PC
It's quite a norm that all computer mouse devices are ergonomically designed for right-handed users. But there are mouse devices available which are s...
Emulate Mouse clicks by hovering using Clickless Mouse in Windows 10
Using a mouse or keyboard in the wrong posture of excessive usage can result in a lot of health issues, including strain, carpal tunnel syndrome, and ...
Add Mouse gestures to Windows 10 using these free tools
In recent years computers and operating systems have greatly evolved. There was a time when users had to use commands to navigate through file manager...