Manipulace s daty se při programování děje hodně v závislosti na problému, který hodláte řešit. Často se vám může stát, že převádíte jednu datovou strukturu na jinou. Některé typy jsou si tak podobné, že převod mezi nimi je jednoduchý proces.

V Pythonu je přeměna slovníku na vnořený nebo zploštělý seznam jednou z oblíbených konverzí, které budete sami provádět.

Převeďte slovník Pythonu na seznam pomocí smyčky for

The pro smyčka vám poskytuje větší trakci na vašich datech při převodu slovníku Pythonu na seznam.

Například následující kód převede slovník na vnořený seznam:

myDictionary = {"A": "Python", "B": "JavaScript", "C": "Uzel"}
convertList = []

pro i v můj slovník:
convertList.append([i, myDictionary[i]])

tisknout (convertedList)

# Výstup: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]

Výše uvedený kód vloží každý klíč (i) a hodnotu (můjDictionary[i]) spárovat do jednotlivých seznamů a přidat je do prázdného seznamu.

Je to stejné jako psát:

pro klíč, hodnota v myDictionary.items():
convertList.append([klíč, hodnota])

Každý pár můžete umístit také do sady nebo n-tice. Vše, co musíte udělat, je vyměnit hranaté závorky ([]) okolo klíč, hodnota pár se složenými rovnátky ({}) nebo závorky (()) podle toho.

Toho můžete dosáhnout také pomocí a pro smyčka spolu s Funkce porozumění seznamu v Pythonu:

convertList = [[i, myDictionary[i]] pro i v můjDictionary]

Funkce pro převod pythonského slovníku na plochý seznam

Zatímco výše uvedené pro volby smyčky vytvářejí vnořený seznam, můžete jej dále rozložit na přímý seznam, pokud to chcete.

Dělá to následující funkce:

defconvertToStraightList(sampleDict):
plochý seznam = []

pro klíč, hodnota v sampleDict.items():
flatList.extend([klíč, hodnota])

vrátit se flatList

tisknout (convertToStraightList (myDictionary))

# Výstup: ['A', 'Python', 'B', 'JavaScript', 'C', 'Node']

Výše uvedená funkce vrací sloučený seznam a koncept je jednoduchý. Smyčka připojuje každý klíč a hodnota spárovat se seznamem, který funkce po dokončení vrátí.

Používání vestavěných funkcí One-Liner

Oba mapa a zip funkce umožňují jednořádková řešení v Pythonu k tomuto problému s různými výsledky. Mohou být vhodnější než pro smyčky, v závislosti na vašem problému, a jsou určitě pohodlnější.

The zip funkce vytváří vnořený seznam n-tic:

convertList = seznam (zip (myDictionary.keys(), myDictionary.values()))
tisknout (convertedList)

# Výstup: [('A', 'Python'), ('B', 'JavaScript'), ('C', 'Node')]

The mapa funkce na druhé straně poskytuje seznam seznamů:

convertList = seznam (map (list, myDictionary.items()))
tisknout (convertedList)

# Výstup: [['A', 'Python'], ['B', 'JavaScript'], ['C', 'Node']]

Převod mezi seznamy Python a slovníky v obou směrech

Tyto různé způsoby, jak převést slovník na seznam, jsou v Pythonu docela jednoduché. Takže můžete slovník přeměnit na seznam, ale můžete také udělat opak tím, že převedete seznam Pythonu na slovník.

Jak převést seznam na slovník v Pythonu

Přečtěte si další

PodíltweetPodílE-mailem

Související témata

  • Programování
  • Programování
  • Krajta

O autorovi

Idowu Omisola (149 publikovaných článků)

Idowu je nadšený z jakékoli chytré technologie a produktivity. Ve volném čase si hraje s kódováním a když se nudí, přepne na šachovnici, ale také se rád jednou za čas odpoutá od rutiny. Jeho vášeň ukazovat lidem cestu kolem moderních technologií ho motivuje k dalšímu psaní.

Více od Idowu Omisola

Přihlaste se k odběru našeho newsletteru

Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné e-knihy a exkluzivní nabídky!

Chcete-li se přihlásit k odběru, klikněte sem