A beágyazott lista lehet listák listája, vagy több adattípust is tartalmazhat. Ha több kisebb adattípusból épített fel egyet, érdemes leegyenlítenie, hogy olvashatóbbá és hozzáférhetőbbé tegye az elemeket.
Ismerje meg, hogyan lehet egy beágyazott listát egyenessé alakítani három különböző megközelítéssel.
Python-lista lapítása
Számos módja van a beágyazott lista kiegyenesítésére Pythonban, annak összetettségétől függően. A csak listákat tartalmazó listák például könnyebben simíthatók, mint a vegyes adattípusokat tartalmazó listák.
A következő szakaszokban megtudhatja, hogyan kell ezeket kezelni.
Beágyazott listák egyesítése a Sum() függvénnyel
Ez a módszer csak a Python listákra vonatkozik, és magában foglalja az ilyen beágyazott listák elemeinek összefűzését. Ez nem vonatkozik a ciklusok, szótárak, halmazok vagy vegyes adattípusok listájára, mivel ezeket a típusokat nem lehet összefűzni.
Miközben használhatja a számára hurok a listák listájának simításához, a összeg() funkciója egyszerű és jobban olvasható, mivel a Python egysoros:
nestedList = [[1, 3, 4], [2, 4], [7, 9, 0]]
flatList = összeg (nestedList, [])
nyomtatás(flatList)
# Kimenet: [1, 3, 4, 2, 4, 7, 9, 0]
A for hurok használata vegyes egymásba ágyazott lista egyesítésére
Használhatja a Python for ciklus vegyes és homogén adattípusokhoz egyaránt. Így működik, ha egy beágyazott lista csak listákat, sorokat, halmazokat, szótárakat vagy ezek keverékét tartalmazza:
nestedList = [[1, 3, 4], (1, 5, 6), {1, 2, 4}, {"e": 3, "o":9, "t":7}]
flatList = []nekem a NesdListben:
k in i-ben:
flatList.mellékel(k)nyomtatás(flatList)
# Kimenet: [1, 3, 4, 1, 5, 6, 1, 2, 4, 'e', 'o', 't']
Ezt a lista megértésével is elérheti:
flatList = [k for i in NesdList for k in i]
nyomtatás(flatList)
# Kimenet: [1, 3, 4, 1, 5, 6, 1, 2, 4, 'e', 'o', 't']
Manipulálja a Python listákat, ahogy tetszik
A Python-lista leegyszerűsíti az adatok megjelenítését és elérését, mivel könnyen kezelhető. Bár már látta, hogyan lehet egybeágyazott Python-listát simítani, a céltól függően még mindig sok finomítást alkalmazhat a listákon. Például egy Python-lista szótárrá konvertálása egy másik gyakori feladat, amelyet a Python megkönnyít.