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:

pythonlst = [
  ['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:

pythonprint(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:

pythonlst = [
  ['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:

pythonprint(lst[1]['d']) # kiírja 1-et
Задание 1

Adott egy lista:

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

Írasson ki belőle a 2, 4 és 8 számokat.

Задание 2

Adott egy lista:

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

Írasson ki belőle a 1, 3 számokat.