Konverter en liste over tuples til en ordbok i Python

Konverter en liste over tuples til en ordbok i Python
Å konvertere en liste til en Python-ordbok er en vanlig oppgave som ofte utføres for enten bedre lesbarhet av dataene eller for å representere visse data i form av nøkkelverdipar. Når du har en liste over tuples, blir nye programmerere imidlertid forvirret om konvertering til en ordbok. Det er forskjellige metoder som lar deg konvertere listen over tuples til en Python -ordbok, og denne guiden kommer til å dekke dem.

Bloggen dekker følgende:

  • Metode 1: Bruk DICT () -metoden for å konvertere en liste over tuples til et dikter
  • Metode 2: Bruk MAP () -metoden med DICT () konstruktøren
  • Metode 3: Bruk ZIP () -metoden med DICT () konstruktøren

Metode 1: Bruk DICT () -metoden for å konvertere en liste over tuples til et dikter

Dict () konstruktøren kan brukes til å generere ordboksobjekter fra en liste over tuples i Python. Du kan imidlertid ikke bare passere på listen over tuples. Snarere må du bruke listeforståelse for å hente de to elementene i tuplene og gi dem inn i dikten () konstruktøren, da det tar to argumenter.

For å demonstrere arbeidet med DICT () -metoden for å lage et dikter fra en liste over tuples, ta følgende kode:

Listvar = ((1, "Apple"), (2, "Banana"), (3, "Peach"), (4, "Orange"))
Print ("Innledende liste:", Listvar)
dictVar = dict ((i, j) for i, j i listvar)
trykte ("resulterende dict:", dictvar)

Når denne koden blir utført, produserer den følgende utgang på terminalen:

Fra utgangen kan du enkelt observere at listen over typer ble konvertert til en Python -ordbok.

Metode 2: Bruk MAP () -metoden med DICT () konstruktøren

En annen måte å konvertere en liste over tuples til en Python -ordbok er ved å bruke MAP () -metoden innen dikten () konstruktøren og sende tuples -listen inn i MAP () -metoden. For å kunne konvertere listen til et dikter, vil imidlertid MAP () -metoden kreve to argumenter. Derfor gir du ganske enkelt "reversert" som det første argumentet, som vil reversere plasseringen av elementene i tupelen.

For å demonstrere arbeidet med MAP () -metoden, bruk følgende kodebit:

Listvar = ((1, "Apple"), (2, "Banana"), (3, "Peach"), (4, "Orange"))
Print ("Innledende liste:", Listvar)
dictVar = dict (kart (reversert, listvar))
trykte ("resulterende dict:", dictvar)

Når denne koden blir utført, gir den følgende resultat på terminalen:

Fra utgangen kan du se at listen over tuples er blitt omgjort til en ordbok med hell. Imidlertid er elementene i tupelen blitt omgjort.

Metode 3: Bruk ZIP () -metoden med DICT () konstruktøren

Hvis verdiene til tupelen er plassert i separate lister, kan brukeren bruke ZIP () -metoden innen DICT () -konstruktøren for å lage en Python -ordbok. For å demonstrere dette, ta følgende kodebit:

listVar1 = ["Apple", "Banana", "Peach", "Orange"]
listVar2 = [1,2,3,4]
dictVar = dict (zip (listvar2, listvar1))
trykte ("resulterende dict:", dictvar)

Når dette kodebiten utføres, vil det gi følgende resultater på terminalen:

Som du kan se, har elementene fra de to forskjellige listene blitt slått sammen for å danne en Python -ordbok.

Konklusjon

En liste over typer kan konverteres til en Python -ordbok ved å bruke DICT () -konstruktøren med enten listeforståelsesmetoden eller ved å bruke MAP () -metoden i DICT () -konstruktøren. Hvis elementene som skal dannes til et Python -dikter plasseres i separate lister, kan brukeren dessuten bruke Zip () -metoden innen dikten () konstruktøren.