Manipulacja danymi zdarza się często w programowaniu, w zależności od problemu, który zamierzasz rozwiązać. Często zdarza się, że konwertujesz jedną strukturę danych na inną. Niektóre typy są tak podobne, że konwersja między nimi jest prostym procesem.
W Pythonie zamiana słownika w zagnieżdżoną lub spłaszczoną listę jest jedną z popularnych konwersji, którą będziesz przeprowadzać.
Konwertuj słownik Pythona na listę za pomocą pętli for
ten dla pętla zapewnia większą przyczepność do danych podczas konwersji słownika Pythona na listę.
Na przykład poniższy kod konwertuje słownik na listę zagnieżdżoną:
myDictionary = {"A": "Python", "B": "JavaScript", "C": "Node"}
Lista konwersji = []dla i w mój słownik:
convertList.append([i, mójSłownik[i]])drukuj (przeliczona lista)
# Dane wyjściowe: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]
Powyższy kod wstawia każdy klucz (i) i wartość (mójSłownik[i]) łączyć w osobne listy i dołączać je do pustej listy.
To tak samo jak pisanie:
dla kluczowa wartość w mójSłownik.items():
convertList.append([klucz, wartość])
Możesz również umieścić każdą parę w zestawie lub krotce. Wystarczy wymienić nawiasy kwadratowe ([]) wokół kluczowa wartość sparuj z nawiasami klamrowymi ({}) lub nawias (()) odpowiednio.
Możesz to również osiągnąć za pomocą dla pętla razem z Funkcja rozumienia list w Pythonie:
Lista konwersji = [[i, mójSłownik[i]] dla i w mój słownik]
Funkcja konwersji słownika Pythona na płaską listę
Podczas gdy powyższe dla opcje pętli tworzą listę zagnieżdżoną, możesz ją dalej zdestrukturyzować w prostą listę, jeśli tego chcesz.
Robi to następująca funkcja:
definitywniekonwertuj na prostą listę(sampleDict):
płaska lista = []dla kluczowa wartość w sampleDict.items():
flatList.extend([klucz, wartość])zwrócić płaska lista
drukuj (convertToStraightList (myDictionary))
# Dane wyjściowe: ['A', 'Python', 'B', 'JavaScript', 'C', 'Node']
Powyższa funkcja zwraca spłaszczoną listę, a koncepcja jest prosta. Pętla dołącza każdy klucz oraz wartość sparuj z listą, którą funkcja zwraca po zakończeniu.
Korzystanie z wbudowanych funkcji jednoliniowych
Oboje mapa oraz zamek błyskawiczny funkcje pozwalają na jednowierszowe rozwiązania w języku Python do tego problemu, z różnymi skutkami. Mogą być bardziej odpowiednie niż dla pętlę, w zależności od problemu, i z pewnością są wygodniejsze.
ten zamek błyskawiczny funkcja tworzy zagnieżdżoną listę krotek:
convertList = lista (zip (myDictionary.keys(), myDictionary.values()))
drukuj (przeliczona lista)
# Dane wyjściowe: [('A', 'Python'), ('B', 'JavaScript'), ('C', 'Node')]
ten mapa funkcja natomiast podaje listę list:
convertList = lista (mapa (list, myDictionary.items()))
drukuj (przeliczona lista)
# Dane wyjściowe: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]
Konwertuj między listami Pythona a słownikami w dowolny sposób
Te różne sposoby konwersji słownika na listę są w Pythonie całkiem proste. Możesz więc przekształcić słownik w listę, ale możesz też zrobić coś przeciwnego, przekształcając listę Pythona w słownik.
Jak przekonwertować listę na słownik w Pythonie?
Czytaj dalej
Powiązane tematy
- Programowanie
- Programowanie
- Pyton
O autorze
Idowu pasjonuje się każdą inteligentną technologią i produktywnością. W wolnych chwilach bawi się kodowaniem, a gdy się nudzi, przechodzi na szachownicę, ale od czasu do czasu uwielbia też oderwać się od rutyny. Jego pasja do pokazywania ludziom drogi do nowoczesnych technologii motywuje go do pisania więcej.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Kliknij tutaj, aby zasubskrybować