Viacrozmerné zoznamy v Pythone

Prvky zoznamu môžu byť nielen reťazce a čísla, ale aj zoznamy. V tomto prípade sa takýto zoznam zoznamov nazýva viacrozmerný. V nasledujúcom príklade zoznam lst pozostáva z troch prvkov, ktoré sú samy o sebe zoznamami:

pythonlst = [
  ['a', 'b', 'c'],
  ['d', 'e', 'f'],
  ['g', 'h', 'i'],
]

V závislosti od úrovne vnorenia môžu byť zoznamy dvojrozmerné - zoznam zoznamov, trojrozmerné - zoznam zoznamov zoznamov (a tak ďalej - štyro rozmerné, päťrozmerné atď.).

Uvedený zoznam je dvojrozmerný, pretože vo vnútri jedného zoznamu sú umiestnené iné podzoznamy, ktoré neobsahujú ďalšie zoznamy. Na výpis ľubovoľného prvku z dvojrozmerného zoznamu je potrebné použiť už nie jeden pár hranatých zátvoriek, ale dva:

pythonprint(lst[0][1]) # vypíše 'b'
print(lst[1][2]) # vypíše 'f'

Takisto sa vo viacrozmerných zoznamoch môžu nachádzať iné iterovateľné objekty, napríklad slovníky, množiny a n-tice. Zmeňme druhý prvok zoznamu na slovník:

pythonlst = [
  ['a', 'b', 'c'],
  {'d': 1, 'e': 2, 'f': 3},
  ['g', 'h', 'i'],
]

Na získanie prvku slovníka je potrebné sa najprv dostať k samotnému slovníku pomocou prvých hranatých zátvoriek. Potom v druhých hranatých zátvorkách uvedieme kľúč slovníka:

pythonprint(lst[1]['d']) # vypíše 1
Задание 1

Daný zoznam:

pythonlst = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9],
]

Vypíšte z neho čísla 2, 4 a 8.

Задание 2

Daný zoznam:

pythonlst = [
  ['a', 'b'],
  {'c': 1, 'd': 2},
  {'e': 3, 'f': 4}
]

Vypíšte z neho čísla 1, 3.