Lista / tömb típus


A Python lista (tömb) adatokat tárol, amelyeknek nem kell azonos típusúnak lennie. Az egyes eltárolt adatelemek a listában sorban vannak: megőrzik azt a sorrendet, ahogyan betettük őket. Az elemekre hivatkozni pedig indexekkel tudunk, indexekkel jelöljük meg, melyik elemre van szükségünk. Ezek mindig természetes számok, 0-tól a lista mérete–1-ig.


Lista létrehozása, hossza, módosítása, szeletelése, függvények, stb.

  • Lista létrehozása: tegyük szögletes zárójelbe az értékeket vesszőkkel elválasztva. ( pl. ls = [ 1, 2, "Béla", 3.1459 ]   li = [] # üres lista )
  • A lista hossza a len() függvénnyel számolható. ( pl. len(ls) ⇒ 4   len(li) ⇒ 0 )
  • A lista egy elemére szögletes zárójelbe tett indexével hivatkozhatunk. ( pl. ls[2] ⇒ "Béla" )
  • Az elem in lista True-t ad, ha "elem" valóban eleme a listának, egyébként False-ot. ( pl. "Béla" in ls ⇒ True   13 in ls ⇒ False )
  • Az ls[n1:n2:n3] "szeleteli" az ls listát. Az n1,n2 a kezdő ill. végső index, n3 a lépésköz. Ha n3 negatív, akkor visszafelé szeletel. ( pl. ls[1:3] ⇒ [2,"Béla"]   ls[2:] ⇒ ["Béla",3.1459]   ls[::-1] ⇒ [3.1459,"Béla",2,1] # lista fordítva   ls[::-2] ⇒ [3.1459,2] )
  • A stringek speciális listák/tömbök, elemei a karakterek, így a listaműveletek a stringekre is alkalmazhatóak.
  • A list() függvény a paraméterében megadott stringet listává alakítja. ( pl. list("Béla") ⇒ ['B', 'é', 'l', 'a'] )
  • A split() is listává alakítja a stringet. ( pl. "kék az ég".split() ⇒ ['kék', 'az', 'ég']   "kék az ég".split("k") ⇒ ['', 'é', ' az ég'] )
  • A split() inverze a join() metódus (ragasztó). ( pl. "...".join(["kék","az","ég"]) ⇒ "kék...az...ég" )
  • A lista elemei módosíthatók, a string krakterei nem! ( pl. ls[3] = 3.14 ⇒ utolsó elem változik   "Lali"[0] = "V" ⇒ hibaüzenet lesz

Néhány gyakori lista metódus

ls.append(elem)elem beszúrása az ls lista végére, nem tér vissza a listával, a listát helyben módosítja
ls.insert(index, elem)elem beszúrása az adott index pozícióra, a tőle jobbra lévő elemeket eggyel jobbra mozgatja
ls.remove(elem)az adott elem első előfordulását eltávolítja a listából, ha nincs benne, akkor ValueErrorkivétel lép fel
ls.pop(index)az adott indexű elemet eltávolítja s ezzel az elemmel tér vissza
   ha az indexet nem adjuk meg, akkor a legjobboldalibb elemmel tér vissza
ls.extend(ls2)a ls2-ben lévő elemeket az ls lista végére beszúrja, a + ill. a += operátorok hasonlóan működnek
ls.index(elem)adott elem keresése a listában
   ha benne van, akkor az elem indexével tér vissza
   ha nincs benne, akkor ValueErrorkivételt dob (elkerüléséhez használjuk az „in” operátort)
ls.sort()helyben rendezi a listát (nem tér vele vissza)
ls.reverse()helyben megfordítja az elemek sorrendjét (nem rendez!, nem tér vissza a listával)

Példák listákra


[3,4] + [1,2] – [3,4,1,2]
for e in ls:
	print(e,end=",") – 1,2,"Béla",3.1459,
for e in ls[::2]:
	print(e,end=",") – 1,"Béla",
"Béla" in ls – True


gyires.inf.unideb.hu - listák




Loading...