Az adatmanipuláció gyakran előfordul a programozás során, attól függően, hogy milyen problémát kíván megoldani. Gyakran előfordulhat, hogy egyik adatstruktúrát egy másikra konvertál. Egyes típusok annyira hasonlóak, hogy a köztük lévő átalakítás egyszerű folyamat.

A Pythonban a szótár beágyazott vagy lapított listává alakítása egy népszerű konverzió, amelyet végre kell hajtania.

Konvertálja a Python szótárat listává a for Loop segítségével

A számára ciklus nagyobb tapadást biztosít az adatokon, miközben a Python-szótárat listává alakítja.

Például a következő kód egy szótárt beágyazott listává alakít:

myDictionary = {"A": "Python", "B": "JavaScript", "C": "csomópont"}
convertedList = []

számára én ban ben myDictionary:
convertedList.append([i, myDictionary[i]])

nyomtatás (konvertáltLista)

# Kimenet: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]

A fenti kód beszúr minden kulcsot (én) és értéke (myDictionary[i]) párosítsa az egyes listákba, és hozzáfűzi őket egy üres listához.

Ez ugyanaz, mint az írás:

instagram viewer
számára kulcs érték ban ben myDictionary.items():
convertedList.append([kulcs, érték])

Mindegyik párt egy készletbe vagy sorba is helyezheti. Csak annyit kell tennie, hogy kicseréli a szögletes kapcsokat ([]) körül kulcs érték párosítsa göndör zárójelekkel ({}) vagy zárójel (()) Eszerint.

Ezt úgy is elérheti, hogy a számára hurok együtt A Python listaértési funkciója:

convertedList = [[i, myDictionary[i]] számára én ban ben myDictionary]

Funkció a Python-szótár lapos listává alakítására

Míg a fenti számára A ciklusopciók beágyazott listát hoznak létre, amelyet tovább bonthat egyenes listává, ha ezt akarja.

A következő funkció teszi ezt:

defconvertToStraightList(mintaDict):
flatList = []

számára kulcs érték ban ben sampleDict.items():
flatList.extend([kulcs, érték])

Visszatérés flatList

nyomtatás (convertToStraightList (sajatszótár))

# Kimenet: ['A', 'Python', 'B', 'JavaScript', 'C', 'Node']

A fenti függvény egy lapított listát ad vissza, és a koncepció egyszerű. A hurok mindegyiket hozzáfűzi kulcs és érték párosítsa egy listához, amelyet a függvény visszaad, amikor befejeződött.

A beépített One-Liner funkciók használata

Mind a térkép és postai irányítószám funkciók lehetővé teszik egysoros Python megoldások erre a problémára, különböző eredménnyel. Alkalmasabbak lehetnek, mint a számára hurok, a problémától függően, és minden bizonnyal kényelmesebbek.

A postai irányítószám függvény beágyazott listát állít elő sorokból:

convertedList = lista (zip (myDictionary.keys(), myDictionary.values()))
nyomtatás (konvertáltLista)

# Kimenet: [('A', 'Python'), ('B', 'JavaScript'), ('C', 'Node')]

A térkép függvény viszont listát ad:

convertedList = lista (térkép (lista, myDictionary.items()))
nyomtatás (konvertáltLista)

# Kimenet: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]

Konvertálja a Python listákat és szótárakat

A szótár listává alakításának különböző módjai meglehetősen egyszerűek a Pythonban. Tehát a szótárat listává csavarhatja, de megteheti az ellenkezőjét is, ha egy Python-listát szótárrá alakít.

Hogyan alakíthatunk át egy listát szótárrá Pythonban

Olvassa el a következőt

Ossza megCsipogOssza megEmail

Kapcsolódó témák

  • Programozás
  • Programozás
  • Piton

A szerzőről

Idowu Omisola (149 cikk megjelent)

Idowu szenvedélyesen rajong minden intelligens technológiáért és a termelékenységért. Szabadidejében kódolással játszik, és ha unatkozik sakktáblára vált, de szeret időnként kiszakadni a rutinból. Szenvedélye, hogy megmutassa az embereknek a modern technológiát, arra sarkallja, hogy többet írjon.

Továbbiak Idowu Omisola-tól

Iratkozzon fel hírlevelünkre

Csatlakozzon hírlevelünkhöz műszaki tippekért, ismertetőkért, ingyenes e-könyvekért és exkluzív ajánlatokért!

Kattintson ide az előfizetéshez