Listat ( lista ) Pythonissa. Listaa funktiot ja menetelmät

Ohjelmoinnissa listat ovat ehkä yhtä hyödyllinen tietorakenne kuin taulukot. Mitä listat ovat, miten niitä luodaan? Kuinka työskennellä luetteloiden kanssa Pythonissa? Opit tästä artikkelistamme.

Mitä listat ovat Pythonissa?

Listat ( lista ) Pythonissa. Listaa funktiot ja menetelmät
Python-tietotyypit: luettelot

Listat voidaan osittain identifioida taulukoilla, mutta listausten (muuten niitä kutsutaan myös listauksiksi) erona ja etuna on se, että niissä voidaan yhdistää erilaisia ​​tietotyyppejä. Toisin sanoen listaus avaa enemmän mahdollisuuksia minkä tahansa objektisarjan tallentamiseen. Listaksi kutsuttu muuttuja sisältää viittauksen muistissa olevaan rakenteeseen, joka sisältää viittauksia vaihtoehtoisiin rakenteisiin.

Lista Pythonissa on järjestetty kokoelma erityyppisiä objekteja, joita voidaan muokata ja joiden objektit voivat vaihdella.

Mitä se tarkoittaa? Katsotaanpa määritelmää yksityiskohtaisesti.

Listauksen kokoa voidaan muuttaa, pienentää, lisätä siihen uusia rivejä. Voit myös muuttaa koko luettelon rakennetta. Muista, että aina kun listan menetelmää käytetään, alkuperäinen luettelo muuttuu, ei kopio.

Selvyyden vuoksi voit ajatella Python-listausta luettelona tuotteista, jotka on ostettava kaupasta. Jos ostossuunnitelmaa tehtäessä kaikki tarvittavat tuotteet sijaitsevat toistensa alapuolella ja jokaisella on oma rivinsä, niin Pythonin listaus sisältää kaikki elementit pilkuilla erotettuina ja hakasulkeissa, jotta Python ymmärtää, että tässä on luettelo. Elementit on lainausmerkeissä. Tämä on pakollinen ehto, koska jokainen elementti on erillinen rivi.

Tapoja luoda luettelo

Siirrytään klassiseen esimerkkiin, luodaan luettelo, jota käytämme ja muokkaamme tulevaisuudessa. Tietojen luomiseen on useita tapoja.

Yksi niistä on sovellus sisäänrakennettu funktioluettelo ( ). Tätä varten sinun on käsiteltävä mikä tahansa iteroitava objekti (merkkijono, monikko tai olemassa oleva luettelo). Tässä tapauksessa merkkijono.

Tässä on mitä tapahtuu lopussa:

>>> list('list') ['c', 'n', 'i', 'c', 'o', 'to']

Toinen esimerkki osoittaa, että listat voivat sisältää rajattoman määrän hyvin erilaisia ​​objekteja. Lisäksi lista voi jäädä tyhjäksi.

>>> s = [] # Tyhjä luettelo >>> l = ['s', 'p', ['isok'], 2] >>> s [] >>> l ['s', 'p' , ['isok'], 2]

Seuraava, kolmas tapa listausten muodostamiseksi on ns listauksen generaattori.

Listausgeneraattori on syntaktinen rakenne listausten luomiseen. Se on samanlainen kuin for-silmukka.

>>> c = [c * 3 c:lle luettelossa] >>> c ['lll', 'iii', 'sss', 'ttt']

Sitä voidaan käyttää myös suurempien rakenteiden luomiseen:

>>> c = [c * 3 c:lle luettelossa, jos c != 'i'] >>> c ['lll', 'sss', 'ttt'] >>> c = [c + d c 'luettelossa' if c != 'i' d:lle 'roskapostissa', jos d != 'a'] >>> c ['ls', 'lp', 'lm', 'ss', 'sp' , 'sm', 'ts', 'tp', 'tm']

Tämä luontimenetelmä ei kuitenkaan aina ole tehokas, kun kootaan useita listauksia. Siksi on suositeltavaa käyttää for-silmukkaa listausten luomiseen.

Jos haluat viitata johonkin luettelon elementtiin, käytetään indeksejä. Jokaisella elementillä on oma indeksinsä.

Indeksi on luettelon elementin numero.

Jos haluat täyttää listauksen toistuvilla, identtisillä elementeillä, käytetään *-symbolia. Sinun on esimerkiksi lisättävä luetteloon kolme identtistä numeroa: [100] * 3.

Listaustoiminnot

tehtävät – Tämä on ehkä Pythonin tärkein etu muihin ohjelmointikieliin verrattuna. Sisäänrakennettuja perustoimintoja voidaan soveltaa luetteloihin.

Harkitse niistä suosituimpia:

  • lista(alue( )) – jos tehtävänä on luoda peräkkäinen lista, käytetään aluetoimintoa. Tällä toiminnolla on seuraavat muodot:
  1. alue (loppu). Sitä käytetään, kun on tarpeen luoda listaus nollasta äärelliseen lukuun.
  2. alue (alku, loppu). Sekä alku- että loppunumerot on määritetty.
  3. alue (alku, loppu, askel). Vaiheparametri määrittää valintaominaisuuden. Jos esimerkiksi sinun on valittava joka viides numero sekvenssistä 1–21, tuloksena oleva luettelo näyttää tältä: [10,15, 20].

Aluetoiminto voi merkittävästi vähentää koodin määrää.

  • pellava (luettelo) – voit selvittää, kuinka monta elementtiä luettelossa on.
  • lajiteltu (luettelo, [avain]) – lajittelee listan kohteet nousevaan järjestykseen.
  • max (luettelo) – palauttaa suurimman elementin.
  • min (lista) – vastakkainen toiminto – voit palauttaa elementin minimiarvolla.

Voit käyttää myös muita sisäänrakennettuja toimintoja:

  • lista (tuple) – Muuntaa monikkoobjektin luetteloksi.
  • summa (lista) – summaa kaikki listan elementit, jos kaikki arvot ovat numeroita, koskee sekä kokonaislukuja että desimaalilukuja. Hän ei kuitenkaan aina ymmärrä sitä oikein. Jos luettelossa on ei-numeerinen elementti, funktio antaa virheilmoituksen: "TypeError: ei tuettu operandityyppi(t) +: 'int' ja 'str'".

Listausmenetelmät

Listat ( lista ) Pythonissa. Listaa funktiot ja menetelmät
Luettelo Python-menetelmistä

Palataan kaupasta ostettavien tuotteiden luetteloomme ja kutsutaan sitä kauppalistaksi:

kauppalista = []

Harkitse seuraavaksi luettelointimenetelmiä:

  • liittää(kohde) – sen avulla voit lisätä luetteloon elementin. Tässä tapauksessa uusi elementti on lopussa.

Täytetään uusi listamme oikeilla tuotteilla:

shoplist.append(leipä)

shoplist.append(maito)

  • lista.laajentaa (A) – lisää "luettelon luetteloon". Tämä ominaisuus säästää aikaa, koska voit lisätä useita kohteita samanaikaisesti. Oletetaan, että meillä on jo luettelo hedelmistä, meidän on lisättävä ne pääluetteloon.

shoplist.extend(hedelmät)

  • lisää (indeksi, kohde) – lisää määritetyn indeksin sisältävään elementtiin määritetyn arvon ennen määritettyä indeksiä.
  • lcount(tuote) – näyttää elementin toistojen lukumäärän.
  • lista.Poista(erä) on päinvastainen funktio lista.liittää (x). Sitä voidaan käyttää minkä tahansa elementin poistamiseen. Jos valittu kohde ei ole luettelossa, ilmoitetaan virheestä.
  • pop([indeksi]) – poistaa valitun elementin ja palauttaa sen samalla tavalla. Jos elementtiä ei ole määritetty, viimeinen elementti poistetaan luettelosta.
  • lajitella ([avain]) – asettaa listauksen elementit nousevaan järjestykseen, mutta voit myös määrittää funktion.
  • indeksi(tuote) – näyttää ensimmäisen valitun elementin indeksin.
  • Voit laajentaa luetteloa eli peilata kaikki sen elementit menetelmällä käänteinen (luettelo). Viimeisestä elementistä tulee ensimmäinen, toiseksi viimeisestä elementistä toinen ja niin edelleen.
  • Listasta luodaan kopio komennolla kopioi (luettelo).
  • syväkopio (luettelo) – syväkopiointi.
  • Poista kaikki listauksen elementit menetelmällä Tyhjennä lista).

On syytä huomata, että listausmenetelmät eroavat merkkijonomenetelmistä siinä, että ne muuttavat luetteloa välittömästi, eli suorituksen tulosta ei tarvitse palauttaa.

>>> l = [1, 2, 3, 5, 7] >>> l.sort() >>> l [1, 2, 3, 5, 7] >>> l = l.sort() > >> tulosta(l) Ei mitään

Seuraavassa on esimerkki luetteloiden kanssa työskentelystä:

>>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >>> a.insert(2, -1) >>> a.append(333) >>> a [66.25, 333, -1, 333, 1, 1234.5, 333] >>> a.index(333) 1 >> > a.remove(333) >>> a [66.25, -1, 333, 1, 1234.5, 333] >>> a.reverse() >>> a [333, 1234.5, 1, 333, -1, 66.25 ] >>> a.sort() >>> a [-1, 1, 66.25, 333, 333, 1234.5]

Jätä vastaus