Luettelon ymmärtämisen oikea-aikainen käyttö Pythonissa voi tehdä iteratiiviset luettelotoiminnot sinulle helpoksi. Sen lisäksi, että se on yksi rivi, se on luettavampi ja toimii tehokkaammin.

Saatat kuitenkin työskennellä, jos et tiedä miten käyttää sitä. Se voi olla jopa turhauttavampaa, jos et tiedä, missä sitä käytetään koodissasi. Tässä näytämme sinulle, kuinka luettelon ymmärtämistä käytetään Pythonissa, joitain tosielämän esimerkkejä.

Mikä on luettelon ymmärtäminen Pythonissa ja miten se toimii?

Kohdeluettelon luominen Pythonilla on helppoa. Tehtävästä voi kuitenkin tulla hieman tylsä, kun sinun on luotava luettelo arvoista tai kohteista matemaattisista tai merkkijono-operaatioista. Silloin luettelon ymmärtäminen voi olla hyödyllistä.

Etuna luettelon ymmärtämisen käytöstä on, että voit suorittaa useita toimintoja yhdessä luettelossa.

Sen sijaan se luo uusia kohteita ja liittää ne tyhjään luetteloon, jonka se ilmoittaa automaattisesti. Joten sen sijaan, että tekisit tyhjän luettelon manuaalisesti ja liittäisit siihen a: lla

instagram viewer
varten silmukka, Pythonin luettelon ymmärtäminen antaa sinun tehdä tämä automaattisesti ilman, että sinun tarvitsee vaivautua uuden luettelon tuloon.

Termi "luettelon ymmärtäminen" tulee siitä, että kaikki toiminnot ovat nimettyyn muuttujaan osoitetussa Python-luettelossa. Kuten totesimme aiemmin, sen avulla voit suorittaa tiettyjä toimintoja yhdellä koodirivillä. Sitten se liittää lähdön uuteen luetteloon.

Viime kädessä voit käyttää luettelon ymmärtämisen tulosta myös muihin tarkoituksiin. Tämä johtuu siitä, että se pinoaa lausekkeita erillisiin muuttujiin. Joten voit viitata niihin myöhemmin.

Saatat esimerkiksi olla kaapata verkkosivusto BeautifulSoupin avulla. Oletetaan, että aiot hankkia kaikkien tuotteiden nimet ja hinnat verkkosivustolta.

Sitten päätät laittaa kaapatut tiedot CSV- tai Excel-tiedostoon. Ihanteellinen käytäntö on kaavata kaikkien tuotteiden nimi ja hinta ja sijoittaa molemmat erillisiin sarakkeisiin. Luettelon ymmärtämisen käyttäminen kuitenkin tällöin varmistaa, että kaapatut tiedot ovat omistettuina muuttujina. Tämän jälkeen voit muuntaa tällaiset muuttujat Python DataFrame -kehykseksi myöhemmin.

Katso alla olevaa esimerkkiä:

Tuotteet = [i.teksti i: lle bs.find_all ('nimilaput')]
Hinta = [i.teksti i: lle bs.find_all ('hintalapput')]

Kun olet saanut silmukoidut muuttujat, voit laittaa ne sitten erillisiin sarakkeisiin DataFrame-kehyksessä Pythonin pandojen avulla.

Kuinka luoda ja käyttää luettelokäsittelyä Pythonissa

varten silmukka on tärkeä iteraattori luettelon ymmärtämisessä. Yleensä luettelon ymmärtäminen Pythonissa kestää tämän muodon:

ComprehensionVariable = [lauseke luettelon kohteille]

Tulostaminen Ymmärtäminen Vaihteleva tuottaa yllä olevan koodin tuloksen luettelona.

Ole kuitenkin varovainen, ettet sekoita luettelon ymmärtämistä avoimeen varten silmukka.

Esimerkiksi käytä avointa silmukkaa saat luettelon kaikista kolmen kerrannaisista välillä 1–30:

myList = []
i: lle alueella (1, 11):
myList.append (i * 3)
tulosta (myList)
Lähtö: [3, 6, 9, 12, 15, 18, 21, 24, 27, 30]

Verrataksemme näitä kahta, tehdään sama asia käyttämällä luettelon ymmärtämistä:

multipleksitOf3 = [i * 3 i: lle alueella (1, 11)]
tulosta (multiplesOf3)
Tuotos = [3, 6, 9, 12, 15, 18, 21, 24, 27, 30]

Voit käyttää luettelon ymmärtämistä myös ehdollisten lauseiden kanssa. Alla oleva esimerkkikoodi tulostaa kaikki parittomat numerot välillä 1–10:

oddNumbers = [i i: lle alueella (1, 11), jos ei i% 2 == 2]
tulosta (parittomat numerot)
Tulos = [1, 3, 5, 7, 9]

Kirjoitetaan nyt myös yllä oleva koodi avoimen avulla varten silmukka:

myList = []
i: lle alueella (1, 11):
jos ei, i% 2 == 0:
myList.append (i)
tulosta (myList)
Lähtö: [1, 3, 5, 7, 9]

Liittyvät: Kuinka lisätä luettelo Pythoniin

Luettelon ymmärtäminen hyväksyy myös sisäkkäiset lausekkeet:

paritonNumerot = [i i: lle alueella (1, 11), jos ei i% 2 == 0, jos i <4]
tulosta (parittomat numerot)
Lähtö: [1, 3]

Se vie myös sisäkkäisen varten silmukka:

someNums = [[i * 2 i: lle alueella (1, 3)] _ alueella ((4)]
tulosta (someNums)

Sinulla voi olla myös tavallinen sisäkkäin varten silmukka luettelon ymmärtämisessä:

someNums = [i * 2 arvolle i alueella (1, 3) k alueella (4)]

Voit myös muokata merkkijonoja Python-luettelon ymmärtämisen avulla. Katsotaanpa alla olevaa sanalaskurin ymmärtämistä:

word = ["Tämä on python-luettelon ymmärtämisen opetusohjelma"]
wordCounter = [i.count ('') + 1 i: lle sanassa]
tulosta (wordCounter)
Lähtö: 7

Luettelon ymmärtäminen voi myös hyväksyä toiminnon, joka suorittaa tietyn operaation. Lisätään kerroinfunktio, joka saa parilliset numerot luettelonäkymään, jotta voimme nähdä, miten tämä toimii:

Luvut = [4, 7, 8, 15, 17, 10]
def-kerroin (n):
moninkertainen = n * 2
palauta useita
multipleEven = [kertoja (i) i: lle luvuissa, jos i% 2 == 0]
tulosta (useitaEven)
Lähtö: [8, 16, 20]

Voit silti kirjoittaa yllä olevan koodin yhteen toimintoon käyttämättä ymmärtämistä. Luettelon ymmärtäminen on kuitenkin hyödyllistä, kun sinun on suoritettava useita iteraatioita ja sijoitettava kukin niistä erillisiin muuttujiin.

Voit esimerkiksi suorittaa toisen toiminnon n ja sinulla on oma muuttuja sitä varten. Muokataan yllä olevaa ymmärrystä parillisten numeroiden muodostamiseksi parittomista:

multipleEvenFromOdds = [kertoja (i) i: lle luvuissa ellei% 1 == 0]
tulosta (multipleEvenFromOdds)
Lähtö: [14, 30, 34]

Sanakirja ja määritä ymmärryksiä

Luettelon ymmärtämisen lisäksi Python tarjoaa myös sanakirjan ja joukon ymmärtämisen toimintoja.

Katso alla olevasta sanakirjan ymmärtämisen esimerkistä, miten se toimii:

vastaava = {i: i * 2 i: lle alueella (10), jos ei i% 2 == 0}
tulosta (corr)
Tulos: {1: 2, 3: 6, 5: 10, 7: 14, 9: 18}

Yläpuolella oleva koodi toistaa numeroluettelon välillä 1 ja 9 ja tekee niistä avaimet. Sitten se kehottaa Pythonia kertomaan jokaisen avaimen kahdella. Lopuksi se esittää kyseisen operaation tulokset vastaavina arvoina kullekin avaimelle tuloksena olevassa taulukossa.

Liittyvät: Taulukot ja luettelot toimivat Pythonissa

Asetettu ymmärrys on vähän samanlainen kuin luettelon ymmärtäminen. Tässä on esimerkki asetetusta ymmärryksestä:

numerot = {i ** (2) i alueella (10), jos i% 4 == 0}
tulosta (numerot)
Lähtö: {0, 16, 64}

Toisin kuin luettelon ymmärtäminen, joukon ymmärtäminen poistaa kaksoiskappaleet:

nums = {i i: lle alueella (20), jos i% 2 == 1 k: n alueella (10), jos k% 2 == 1}
tulosta (summat)
Tulos: {1, 3, 5, 7, 9, 11, 13, 15, 17, 19}

Voit kokeilla yllä olevaa koodia ymmärtämällä luetteloa, kuinka ne eroavat toisistaan.

Voitteko käyttää luettelon ymmärtämistä joka kerta?

Olemme tarkastelleet erilaisia ​​esimerkkejä luettelon ymmärtämisestä ja siitä, missä voit käyttää niitä. Kuitenkin, kuten mikä tahansa muu Python-menetelmä, luettelon ymmärtämisen käyttötapa riippuu ongelmasta, jonka haluat ratkaista. Siksi sinun tulisi käyttää sitä vain, jos se on ihanteellinen ratkaisemaan haluamaasi ongelmaan.

Yksi luettelon ymmärtämisen tarkoituksista on yksinkertaistaa koodia ja tehdä siitä luettavampi. Joten varmista, että vältät monimutkaisuutta käsitellessäsi sitä. Esimerkiksi pitkästä Python-ymmärryksestä voi tulla monimutkainen lukeminen. Se kukistaa sen tarkoituksen.

Sähköposti
Kuinka käyttää Python-luettelon selityksiä (ja milloin niitä ei tule käyttää)

Tässä on kaikki mitä sinun tarvitsee tietää tämän Pythonin hämmästyttävän ominaisuuden käytöstä, joka parantaa tuottavuutta ja koodin luettavuutta yhdessä yössä.

Liittyvät aiheet
  • Ohjelmointi
  • Python
Kirjailijasta
Idowu Omisola (55 artikkelia julkaistu)

Idowu on intohimoisesti kaikesta älykkäästä tekniikasta ja tuottavuudesta. Vapaa-ajallaan hän leikkii koodauksella ja vaihtaa shakkilautaan, kun hän on tylsistynyt, mutta rakastaa myös irtautumista rutiinista silloin tällöin. Hänen intohimonsa osoittaa ihmisille tien ympäri nykytekniikkaa motivoi häntä kirjoittamaan enemmän.

Lisää Idowu Omisolasta

Tilaa uutiskirjeemme

Liity uutiskirjeeseemme, jossa on teknisiä vinkkejä, arvosteluja, ilmaisia ​​e-kirjoja ja erikoistarjouksia!

Vielä yksi askel !!!

Vahvista sähköpostiosoitteesi juuri lähettämässäsi sähköpostiviestissä.

.