Python

Pythoni xrange vs. vahemik

Pythoni xrange vs. vahemik
Kuni Pythoni versioonini 2.x, selles keeles kasutati antud vahemikus olevate täisarvude loendi loomiseks kokku kahte põhimeetodit. Kaks meetodit on loetletud allpool:

vahemik ()
xrange ()

Edasi liikudes eemaldati Pythoni uusima versiooniga (alates 3) vahemik () ja seejärel muudeti xrange () vahemikuks (). Nüüd on Python 3-s selle meetodi jaoks ainult üks funktsioon, st.e., vahemik (). Python 3-s on vahemiku () funktsioon vaid üks viis Python 2 xrange () vanema versiooni rakendamiseks.x. Siin seome need kaks.

Xrange ()

Xrange () abil saab luua arvude järjestuse, näiteks funktsiooni range ().

Süntaks

Xrange () määratlemisel kasutatakse järgmist süntaksit:

xrange (algus, lõpp, samm)

Funktsiooni kasutatakse numbrivahemiku määratlemiseks alates (on lisatud) kuni lõpuni (ei kuulu komplekti).

Parameetrid

Järgmine on nõutavate parameetrite loend:

Algus: numbrijärjestuse lähtepositsioon
Lõpp: numbrijärjestuse lõppasend
Samm: seeria kahe järjestikuse numbri eristamine.

Näited

Järgmises näites kontrollime xrange'i määramise viise.

Siin täpsustame ainult lõppasendit.

Niisiis, lõppväärtuseks määratakse 5 ja siis trükitakse lõppasend, nagu allpool näidatud:

Nüüd näeme vahemiku helistamise meetodit, kõne lõpetamise süntaks on järgmine:

>>> x = x-vahemik (lõpp)

Siis saame selle trükitud.

Saame vahemiku väljundis, nagu eespool näidatud.

Nüüd määratleme nii algus- kui ka lõpp-punktid. Siin on alguspunkt 2 ja lõpp-punkt 5. Seejärel printisime algus- ja lõpppositsioonid, nagu allpool näidatud:

Pärast seda loome arvude jada meie algus- ja lõpppunktidest, st.e., 2 kuni 5.

>>> y = x-vahemik (algus, lõpp)

Lõpuks kontrollime lähtepunkti, sammu ja lõpp-punkti määratlemise meetodit. Kui oleme kõik kolm parameetrit määratlenud; helistame neile sarnaselt allpool näidatud meetodiga:

Nende kolme parameetri xrange'i kutsumiseks kasutame järgmist süntaksit:

>>> z = xrange (algus, samm, lõpp)

Vahemik ()

Range () kasutatakse loendi loomiseks ja see on mitme iteratsiooni jaoks kiirem funktsioon.

Süntaks

Kasutatakse järgmist süntaksit:

>>> vahemik (algus, lõpp, samm)

Näited

Esimesel juhul määratleme lõppväärtuse. Selleks on kasutatud süntaksit:

>>> vahemik (lõpp)

Seega kasutame allpool toodud näites vahemiku lõppväärtusena 3. Kui saame selle trükitud, tagastab see väärtused, välja arvatud lõppväärtus.

Järgnevas näites kasutame algus- ja lõpp-punkti kirjeldamise näidet. Väärtus algab 1-st ja lõpeb 10-ga (välistades selle). Lähtepunkt on lisatud, kuid lõpp-punkt jäetakse välja. Süntaks on sarnane allpool kirjeldatuga:

>>> vahemik (algus, lõpp)

Niisiis määratleme alguspunkti ja seejärel lõpp-punkti, mis on vastavalt 1 ja 10.

Nüüd on järgmises näites sammfunktsioon. Funktsioon, mis määratleb jada suvalise kahe punkti vahelise lõhe. Väärtus algab 0-st ja lõpeb 10-ga (välistades selle). Kasutatav süntaks on toodud allpool:

>>> vahemik (algus, samm, lõpp)

Näide on toodud allpool, kus 2 on sammu väärtus.

Eelised

vahemik ()

See on kiirem, kui iteratsioone soovitakse teha mitu korda. vahemikus () on ainult reaalajas täisarvu objekti väärtused. Mälu osas ei täida see hästi tulemusi.

xrange ()

See peab iga kord looma täisarvu objekti. xrange () pole, kuna see ei toeta viilu ja loendimeetodeid. xrange () võtab sama palju mälu. Niisiis, mis puutub jõudlusse, eriti kui kasutajad kordavad suurema vahemiku väärtuse korral, toimib xrange () palju paremini.

Python 2 ja Python 3 vahemike ja xrange'i sarnasused

Python 2 xrange'il on stringi kujul kirjeldav esitus, mis on väga sarnane Python 3 vahemiku objekti väärtusega.

Xrange () väärtus on Python 2-s iterable, nii et see on vahemikus () Python 3-s.

xrange () ja range () on mõlemal sammu, lõpu ja alguspunkti väärtused. Mõlemal juhul on samm valikuline väli, sama on ka algväärtus.

Mõlemad Python 2 ja 3 x-vahemikud toetavad pikkust, mida saab indekseerida edasi- või vastupidises järjekorras. Siin on näide samast:

Vahemiku () ja vahemiku () vahelised erinevused

Kuna xrange () hindab laisale hindamisele vajalike väärtustega ainult generaatori objekti, on seda vahemikus () kiirem rakendada. range () aitab loendi tagastada ja sisaldab kõiki objekte, mida saab kasutada, samas kui xrange () tagastab loendiga seotud objektid ja neid ei saa neile rakendada, nii et saaksime seda lugeda puuduseks.

Funktsioonis vahemik () kasutatav muutuja salvestab vahemiku väärtuse ja võtab seega palju mälu võrreldes xrange () -ga, mis võtab muutujate tõttu ainult osa mälust. range () tagastab vahemiku objekti, xrange () aga generaatori objekti.

Funktsioon vahemik (1, 7, 2) tagastab väljundi [1, 3, 5] ja sisendi x-vahemik (1, 7, 2) toodab väljundi [1, 3, 5]. Nii võime eeldada, et need on mustris sarnased.

Järeldus

vahemikul () ja xrangeil () on mõlemal erinevad omadused, nagu eespool arutletud. Kõik selles õpetuses mainitud võrdlused koos näidetega on abiks lugejatele, et nad saaksid oma eelistustest lähtuvalt paremini valida.

Kuidas mängu Linuxis arendada
Kümme aastat tagasi ei osanud paljud Linuxi kasutajad ennustada, et nende lemmikoperatsioonisüsteem on ühel päeval populaarne kommertsvideomängude män...
Kommertsmängumootorite avatud lähtekoodiga sadamad
Tasuta, avatud lähtekoodiga ja platvormidevaheliste mängumootorite puhkusereise saab kasutada nii vanade kui ka mõnede üsna hiljutiste mängude pealkir...
Parimad Linuxi käsurea mängud
Käsurida pole Linuxi kasutamisel lihtsalt teie suurim liitlane - see võib olla ka meelelahutusallikas, sest saate seda kasutada paljude lõbusate mängu...