Luettelon, joukon ja sanakirjan ymmärtäminen Pythonissa

Kuvaaja: Kara Eads on Unsplash

Komprehensseja Pythonissa:

Käsitteistö koostuu yhdestä lausekkeesta, jota seuraa vähintään yksi for-lauseke ja nolla tai useampi for– tai if-lauseke.

Pythonissa on kolme käsitteistöä.

Käsitteistöjen tyypit Pythonissa(Kuvan lähde: Kirjoittaja)

Luettelon käsitteistöt:

Luettelon käsitteistöt tarjoavat ytimekkään tavan luoda luetteloita. Yleisiä käyttökohteita ovat uusien listojen luominen, joissa jokainen elementti on tulosta joistakin operaatioista, joita sovelletaan toisen sekvenssin tai iterable-olion jokaiseen jäseneen, tai sellaisten elementtien osajonon luominen, jotka täyttävät tietyn ehdon. – python docs

Syntaksi:

Lauseke voi olla mikä tahansa mielivaltainen lauseke, monimutkainen lauseke, tuple, sisäkkäisiä funktioita tai jokin muu listan ymmärtäminen.

Tämä vastaa

for item in iterable:
if conditional:
expression

Palautustyyppi:

List

Luettelokäsitteistön käyttäminen:

Luettelokäsitteistö koostuu hakasulkeista, jotka sisältävät lausekkeen, jota seuraa for-lauseke, ja sen jälkeen nolla tai useampi for– tai if-lauseke. Tuloksena on uusi lista, joka syntyy arvioimalla lauseketta sitä seuraavien for– ja if-lausekkeiden yhteydessä.

Luettelon ymmärtäminen selitettynä(Kuvan lähde: Kirjoittaja)

Luettelon ymmärtäminen vs. for- silmukka.

Luettelonkäsittelyn avulla se on tiiviimpi ja luettavampi verrattuna for loop.

Lukujen neliön löytäminen käyttämällä Luettelonkäsittelyä vs for-silmukka:

for-silmukka vs Luettelonkäsittely

Luettelonkäsittely vs suodatin.

Palauttaa iteraattorin iteroitavissa olevien iteroitavien alkioiden niistä elementeistä, joiden kohdalla funktio palaa true. iterable voi olla joko sekvenssi, säiliö, joka tukee iterointia, tai iteraattori

Parillisten lukujen löytäminen listan ymmärtäminen vs filter():

Listan ymmärtäminen vs filter()

3.Listan ymmärtäminen vs map.

map:

Palauttaa iteraattorin, joka soveltaa funktiota iterable:n jokaiseen elementtiin, jolloin saadaan tulokset.

Lukujen neliön löytäminen List Comprehension vs map():

List Comprehension vs map()

List Comprehensionin sisäkkäiset silmukat.

List Comprehension voi sisältää yhden tai useamman for-lausekkeen.

Esimerkki 1: Listan tasoittaminen List Comprehensionilla, jossa on kaksi for-lauseketta:

Listan tasoittaminen List Comprehensionilla

5.Useita if-ehtoja List Comprehensionissa.

List Comprehension voi sisältää nolla tai useampia if-lausekkeita.

Esimerkki: Etsitään luvut, jotka ovat jaollisia 2:lla ja 3:lla.

Luettelon ymmärtäminen käyttäen kahta if-lauseketta

Luettelon ymmärtämisessä lauseke voi olla tuple.

Luettelon ymmärtämisessä voimme mainita lausekkeen tupleena. Se on kirjoitettava sulkujen sisään. Muuten se aiheuttaa Error. Tuloksena on tupleluettelo.

Esimerkki 1: Tupleluettelon luominen käyttämällä List Comprehensionia kahdella ’for’-lausekkeella:

Tupleluettelo

Jos lauseke on tuple ja jos sitä ei ole suljettu sulkujen sisälle, se herättää SyntaxError.

Lausekkeen tulee olla suluissa, jos se on tuple.

Esimerkki 2:zip()-funktion käyttäminen listan ymmärtämisessä:

zip()-funktio listan ymmärtämisessä

Listan ymmärtämisessä voidaan kutsua metodia kullekin alkioelementille.

Esimerkki 1: Kutsutaan strip()-metodia kullekin listan alkioon. Sitä käytetään valkoisten välilyöntien poistamiseen.

kutsutaan strip()-metodia kullekin elementille

Esimerkki 2: Kutsutaan upper()-metodia kullekin listan elementille.

kutsutaan upper()-metodia kullekin elementille

Luettelon ymmärrettävyys voi sisältää monimutkaisia lausekkeita ja sisäkkäisiä toimintoja.

Esimerkki 1: Alla olevassa esimerkissä lausekkeessa käytämme strip-metodia ja int-funktiota.

Esimerkki 2: Alla olevassa esimerkissä lausekkeessa käytämme abs()-funktiota ja str()-funktiota.

Luettelonkäsittelyn sisäkkäisrakenteiset lausekkeet.

Luettelonkäsittelyn lausekkeisiin voi sisältyä myös jokin toinen luettelonkäsittely: Ensimmäinen lausekkeena annettu listakäsitys palauttaa listan parillisia lukuja 0-10. Sisäkkäinen listan ymmärtäminen palauttaa kyseisen lausekkeen (luettelo parillisista luvuista 0-10) kolme kertaa(range(3)).

Sisäkkäinen listan ymmärtäminen

Vastaa

Sähköpostiosoitettasi ei julkaista.