Manipulácia s údajmi sa často vyskytuje pri programovaní v závislosti od problému, ktorý chcete vyriešiť. Často sa vám môže stať, že konvertujete jednu dátovú štruktúru na inú. Niektoré typy sú také podobné, že prevod medzi nimi je jednoduchý proces.
V Pythone je premena slovníka na vnorený alebo sploštený zoznam jednou z populárnych konverzií, ktoré budete vykonávať.
Preveďte Pythonský slovník na zoznam pomocou slučky for
The pre slučka vám poskytuje väčšiu trakciu vašich údajov pri konverzii slovníka Pythonu na zoznam.
Napríklad nasledujúci kód konvertuje slovník na vnorený zoznam:
myDictionary = {"A": "Python", "B": "JavaScript", "C": "Uzol"}
convertList = []pre i v myDictionary:
convertList.append([i, myDictionary[i]])vytlačiť (convertedList)
# Výstup: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]
Vyššie uvedený kód vloží každý kľúč (i) a hodnotu (môj slovník[i]) spárovať do jednotlivých zoznamov a pridať ich do prázdneho zoznamu.
Je to rovnaké ako napísať:
pre kľúč, hodnota v myDictionary.items():
convertList.append([kľúč, hodnota])
Každý pár môžete umiestniť aj do sady alebo n-tice. Všetko, čo musíte urobiť, je vymeniť hranaté zátvorky ([]) okolo kľúč, hodnota pár s kučeravými zátvorkami ({}) alebo zátvorky (()) podľa toho.
Môžete to dosiahnuť aj pomocou a pre slučka spolu s Funkcia porozumenia zoznamu v Pythone:
convertList = [[i, myDictionary[i]] pre i v môj slovník]
Funkcia na konverziu slovníka Python na plochý zoznam
Kým vyššie uvedené pre slučky vytvárajú vnorený zoznam, môžete ho ďalej deštrukturovať do priameho zoznamu, ak to chcete.
Robí to nasledujúca funkcia:
defconvertToStraightList(sampleDict):
plochý zoznam = []pre kľúč, hodnota v sampleDict.items():
flatList.extend([kľúč, hodnota])vrátiť flatList
vytlačiť (convertToStraightList (myDictionary))
# Výstup: ['A', 'Python', 'B', 'JavaScript', 'C', 'Node']
Vyššie uvedená funkcia vráti sploštený zoznam a koncept je jednoduchý. Slučka pripojí každý kľúč a hodnotu spárovať so zoznamom, ktorý funkcia vráti po dokončení.
Používanie vstavaných funkcií jedného riadku
Obaja mapa a PSČ funkcie umožňujú jednoriadkové riešenia v Pythone na tento problém s rôznymi výsledkami. Môžu byť vhodnejšie ako pre slučky, v závislosti od vášho problému a určite sú pohodlnejšie.
The PSČ funkcia vytvára vnorený zoznam n-tic:
convertList = zoznam (zip (myDictionary.keys(), myDictionary.values()))
vytlačiť (convertedList)
# Výstup: [('A', 'Python'), ('B', 'JavaScript'), ('C', 'Node')]
The mapa funkcia na druhej strane poskytuje zoznam zoznamov:
convertList = zoznam (mapa (list, myDictionary.items()))
vytlačiť (convertedList)
# Výstup: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]
Konvertujte medzi zoznamami Python a slovníkmi v oboch smeroch
Tieto rôzne spôsoby prevodu slovníka na zoznam sú v Pythone celkom jednoduché. Takže môžete slovník premeniť na zoznam, ale môžete to urobiť aj naopak, a to tak, že skonvertujete zoznam Pythonu na slovník.
Ako previesť zoznam na slovník v Pythone
Prečítajte si ďalej
Súvisiace témy
- Programovanie
- Programovanie
- Python
O autorovi
Idowu je nadšený z akejkoľvek inteligentnej technológie a produktivity. Vo voľnom čase sa hrá s kódovaním a keď sa nudí, prepne na šachovnicu, no tiež sa rád raz za čas odpúta od rutiny. Jeho vášeň ukázať ľuďom cestu okolo moderných technológií ho motivuje k ďalšiemu písaniu.
prihlásiť sa ku odberu noviniek
Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné e-knihy a exkluzívne ponuky!
Ak sa chcete prihlásiť na odber, kliknite sem