Učíme sa Python – časť 7. (Listy – teória)

0

Čo je to list

List je špeciálny typ premennej, ktorá môže obsahovať viac ako jednu hodnotu. Často sa tento typ premennej nazýva aj pole.

Predstavme si, že máme v našom programe viacero ovocí.

ovocie1 = "Jahoda"
ovocie2 = "Banan"
ovocie3 = "Pomaranc"

Máme v podstate viacero premenných, ktorých hodnota je nejaké ovocie. Čo ak by sme v našom programe potrebovali pracovať s 200 rôznymi ovociami? Alebo autami, či ľudmi?
Dobré by bolo si tieto ovocie všetky ovocia uložiť do jednej premennej. Na to máme listy.

ovocie = ["jahoda", "banan", "pomaranc"]

Teraz sme si vytvorili jednu premennú, ktorá obsahuje všetky naše ovocia.

Keď použijeme funkciu type() na zistenie typu premennej, dostaneme list.

>>> type(ovocie)
<class 'list'>

Môžeme si vypísať naše ovocie:

>>> print(ovocie)
['jahoda', 'banan', 'pomaranc']

 

Rôzne funkcie, ktoré ponúka list

Pristúpenie k prvku

V liste máme momentálne jahodu, banán a pomaranč. List si udržiava poradie prvkov pomocou indexu. Normálne by sme povedali, že jahoda je na 1. mieste, banán na 2. mieste a pomaranč na 3. mieste. V programovaní ale indexovanie začína od 0. Čiže naše ovocia majú indexy 0,1 a 2.

Ak chceme pristúpiť k prvému (ľudskou rečou prvému ale počítačovou rečou k nultému) ovociu podľa indexu, tak to vieme spraviť takto.

prve_ovocie = ovocie[0]

Následne keď použijeme príkaz print(prve_ovocie) tak dostaneme „jahoda“.

Modifikácia prvku

Čo ak by sme chceli zmeniť banán na čuroriedku? Jednoducho prepíšeme miestio v liste, na ktorom sa nachádza banán.

ovocie[1] = "cucoriedka"

Teraz, keď si vypíšeme list, tak dostaneme:

>>> print(ovocie)
['jahoda', 'cucoriedka', 'pomaranc']
Zistenie dĺžky listu

Koľko prvkov obsahuje list? Jednoducho vieme zistiť pomocou funkcie len().

>>> len(ovocie)
3
Iterovanie prvkov listu (prehľadávanie)

Často budeme chcieť prehľadávať všetky prvky poľa. Dá sa to robiť takto:

for jedno_ovocie in ovocie:
    print(jedno_ovocie)

Na výstupe dostaneme:
jahoda
cucoriedka
pomaranc

Pridávanie nového prvku do listu

Jednoducho si vieme pridať aj nové ovocie. Resp rozšíriť ovocie o ďalšie pomocou funkcie append()

>>> ovocie.append("ribezle")
>>> print(ovocie)
['jahoda', 'cucoriedka', 'pomaranc', 'ribezle']

Pomocou príkazu append sme na koniec listu pridali ďalšie ovocie – čučoriedka

Odstránenie prvku (podľa indexu)

Môžeme odstrániť 3. prvok listu. Teda podľa indexu 2 (lebo začíname indexovať od 0).
Použijeme funkciu pop()

ovocie.pop(2)

Keď si znova vypíšeme ovocie, tak pomaranc tam už nie je:
[‚jahoda‘, ‚cucoriedka‘, ‚ribezle‘]

Odstránenie prvku (podľa hodnoty)

Odstraniť prvok v liste sa dá aj podľa jeho hodnoty. Čiže ak chceme odstrániť ribezle tak to môžeme urobiť pomocou funkcie remove().

ovocie.remove("ribezle")

Náš list ovocí sa nejak kráti. Už nám po vypísaní zostávajú len:
[‚jahoda‘, ‚cucoriedka‘]

Existencia Hodnoty v liste (obsahuje list tento prvok?)

Chcem zistiť, či naše ovocie obsahuje čerešne. Môžem to spraviť takto

>>> "ceresne" in ovocie
False

Keď použijeme takýto zápis: hodnota in ovocie    – tak nám ten príkaz „in ovocie“ vráti buď True alebo False. Čerešne medzi naším ovocím nemáme, čiže nám vrátilo False. Ak by sme sa ale pýtali na jahody, tak by sme dostali inú odpoveď.

>>> "jahoda" in ovocie
True
Ďalšie funkcie …

Nad poľom sa dajú robiť kopec ďalších príkazov. Ukážeme si len zopár.
1. Obrátenie prvkov v poli.

oblecenie = ["tricko", "dzinsy", "ponozky"]
oblecenie.reverse() # Revertnem, resp obratim prvky v liste
print(oblecenie)

Kód vypíše

['ponozky', 'dzinsy', 'tricko']

2. Zoradenie (zoradenie podľa abecedy)

slova = ["ujo", "ahoj", "lampa", "penazenka", "macka"]
slova.sort() # Zosortujeme prvky podľa abecedy
print(slova)

Kód vypíše zoradené slova podľa abecedy

['ahoj', 'lampa', 'macka', 'penazenka', 'ujo']

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená.