Vícerozměrné seznamy v Pythonu
Prvky seznamu nemusí být pouze
řetězce a čísla, ale také seznamy. V tomto
případě se takový seznam seznamů nazývá
vícerozměrný. V následujícím příkladu
seznam lst se skládá ze tří prvků,
které jsou samy o sobě seznamy:
lst = [
['a', 'b', 'c'],
['d', 'e', 'f'],
['g', 'h', 'i'],
]
V závislosti na úrovni vnoření mohou být seznamy dvourozměrné - seznam seznamů, trojrozměrné - seznam seznamů seznamů (a tak dále - čtyřrozměrné, pětirozměrné atd.).
Výše uvedený seznam je dvourozměrný, protože uvnitř jednoho seznamu jsou umístěny další podseznamy, které neobsahují další seznamy. Chcete-li vypsat libovolný prvek z dvourozměrného seznamu, je třeba napsat již ne jednu dvojici hranatých závorek, ale dvě:
print(lst[0][1]) # vypíše 'b'
print(lst[1][2]) # vypíše 'f'
Také ve vícerozměrných seznamech mohou být další iterovatelné objekty, například slovníky, množiny a n-tice. Pojďme změnit druhý prvek seznamu na slovník:
lst = [
['a', 'b', 'c'],
{'d': 1, 'e': 2, 'f': 3},
['g', 'h', 'i'],
]
Chcete-li získat prvek slovníku, je třeba nejprve se dostat k samotnému slovníku pomocí prvních hranatých závorek. Poté ve druhých hranatých závorkách uvedeme klíč slovníku:
print(lst[1]['d']) # vypíše 1
Dán seznam:
lst = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
]
Vypište z něj čísla 2, 4
a 8.
Dán seznam:
lst = [
['a', 'b'],
{'c': 1, 'd': 2},
{'e': 3, 'f': 4}
]
Vypište z něj čísla 1, 3.