Konverter liste til ordbok i Python

Å konvertere en liste til en ordbok i Python er ikke så vanskelig.

La oss sjekke ut forskjellige måter å konvertere en liste til en ordbok.

Intro

Før vi hopper inn i opplæringen, la oss se et eksempel på å konvertere en liste til en ordbok. Vi vil ha en liste over tupler (hver tuppel består av to elementer) eller bare en liste over elementer. Vi tar begge input og konverterer dem til ordbøker.

Eksempler:

I det følgende eksempelet har vi tatt en liste over tupler og konvertert den til en ordbok. Vi har tatt det første elementet i hver tuppel som en nøkkel og det andre elementet som en verdi for ordboken.

Inndata: list_one = [(‘a’, ‘A’), (‘b’, ‘B’), (‘c’, ‘C’)]

Utdata: {«a»: «A», «b»: «B», «c»: «C»}

I følgende eksempel har vi tatt en liste over elementer og konvertert den til en ordbok med alternative elementer som nøkkel og verdi. Vi vil gi null til nøkkelen hvis det ikke er noe element igjen for den som nøkkel (hvis listen har et oddetall av elementer).

  Visualiser ideen din med disse tankekartskaperne

Inndata: list_one = [‘a’, ‘A’, ‘b’, ‘B’, ‘c’, ‘C’, ‘d’]

Utdata:{«a»: «A», «b»: «B», «c»: «C», «d»: Ingen}

Vi har sett målet med opplæringen. Og vi vil diskutere begge eksemplene på forskjellige måter. La oss starte med det første eksemplet.

Liste over Tuples – Ordbok

La oss se hvordan du konverterer en liste over tuples til en ordbok. Du kan prøve å skrive koden ved hjelp av følgende trinn.

  • Initialiser listen over tupler med dummydata som gitt eksemplene ovenfor (sørg for at hver tuppel i listen har nøyaktig to elementer).
  • Send listen over tuples to dict-metoden og den lagrer resultatet i en ny variabel.
  • Det er det, vi har konvertert en liste over tuples til en ordbok med en enkelt kodelinje.
# list of tuples
list_of_tuples = [('a', 'A'), ('b', 'B'), ('c', 'C')]

# converting to dictionary
list_of_tuples_dict = dict(list_of_tuples)

# printing the result dict
print(list_of_tuples_dict)

Du kan teste programmet ovenfor ved å kjøre det. Resultatet får du som vi ser i eksemplene.

  10 beste halloween-videomakere for skumle ferie tipsbilk.net

Liste – Ordbok

Vi har sett hvordan du konverterer en liste over tuples til en ordbok, og det er en grei ting i Python. I denne delen skal vi se hvordan du konverterer en vanlig liste til en ordbok.

Se det andre eksemplet fra den første delen av opplæringen for å få mer klarhet.

Følg trinnene nedenfor for å skrive koden for det andre eksemplet.

Vi har fylt standardverdien som Ingen for elementet som ikke vil ha noen verdi (en liste som inneholder et oddetall av elementer). For det må vi bruke en metode kalt zip_longest fra modulen itertools.

  • Importer modulens itertools og initialiser en liste med et oddetall av elementer gitt i eksemplene.
  • Konverter listen til en iterabel for å unngå repetisjon av nøkkel- og verdipar i zip_longest-metoden.
  • Send nå den iterable til metoden zip_longest og fillvalue som None. Det vil returnere et zip-objekt.
    • Vi må passere iterable to ganger da det tar nøkkel og verdi fra de to iterablene. I vårt tilfelle er både nøkler og verdier i samme iterable. Så vi må gi den to ganger før fillvalue.
  • Konverter objektet til Python-ordboken ved å bruke dict-metoden.
  • Skriv ut resultatet.
# importing the module
import itertools

# plain list with odd number of elements
plain_list = ['a', 'A', 'b', 'B', 'c', 'C', 'd']

# converting it to iterable to avoid repetition
plain_list_iter = iter(plain_list)

# converting the plain_list to dict
plain_list_dict_object = itertools.zip_longest(plain_list_iter, plain_list_iter, fillvalue=None)

# convert the zip_longest object to dict using `dict`
plain_list_dict = dict(plain_list_dict_object)

# print it
print(plain_list_dict)

Du kan gi fyllverdien hva du vil. Prøv ut forskjellige ting med den. Og utfør koden for å se om vi får den nøyaktige utgangen som nevnt i eksemplet eller ikke.

  Hvordan få et bilde bak tekst i PowerPoint

Konklusjon

Håper du likte å konvertere listen til en ordbok. La oss møtes i neste veiledning.

Deretter lærer du hvordan du flater ut liste i Python.

Lykke til med koding 🙂

Likte du å lese artikkelen? Hva med å dele med verden?