Többdimenziós listák Pythonban
A lista elemei nem csak sztringek és számok lehetnek, hanem listák is. Ebben az esetben az ilyen listák listáját többdimenziós listának nevezzük. A következő példában a lst lista három elemből áll, amelyek maguk is listák:
lst = [
['a', 'b', 'c'],
['d', 'e', 'f'],
['g', 'h', 'i'],
]
A beágyazás szintjétől függően a listák lehetnek kétdimenziósak - lista listákból, háromdimenziósak - lista listák listáiból (és így tovább - négydimenziósak, ötdimenziósak stb.).
A fenti lista kétdimenziós, mivel egy lista belsejében más listák helyezkednek el, amelyekben nincsenek más listák. Egy kétdimenziós lista egyes elemeinek kiírásához már nem egy, hanem két szögletes zárójelpárt kell használni:
print(lst[0][1]) # kiírja 'b'-t
print(lst[1][2]) # kiírja 'f'-et
A többdimenziós listákban más iterálható objektumok is lehetnek, például szótárak, halmazok és tuple-ok. Módosítsuk a lista második elemét szótárra:
lst = [
['a', 'b', 'c'],
{'d': 1, 'e': 2, 'f': 3},
['g', 'h', 'i'],
]
Ahhoz, hogy a szótár egy elemét elérjük, először magához a szótárhoz kell hozzáférnünk az első szögletes zárójelek segítségével. Ezután a második szögletes zárójelek között a szótár kulcsát kell megadnunk:
print(lst[1]['d']) # kiírja 1-et
Adott egy lista:
lst = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
]
Írasson ki belőle a 2, 4
és 8 számokat.
Adott egy lista:
lst = [
['a', 'b'],
{'c': 1, 'd': 2},
{'e': 3, 'f': 4}
]
Írasson ki belőle a 1, 3 számokat.