I Python er en liste en samling av elementer som er ordnet og kan endres, mens en ordbok er en samling nøkkel-verdi-par som er uordnet, endres og indeksert. Det er flere måter å konvertere en liste til en ordbok i Python, avhengig av ønsket nøkkel-verdi-paring. Denne artikkelen utforsker ulike metoder for å oppnå denne konverteringen.
Metode 1: Bruke en sløyfe
En av de enkleste måtene å konvertere en liste til en ordbok er å bruke en løkke. Denne metoden lar deg spesifisere nøklene og verdiene eksplisitt. Her er et eksempel:
# List of fruits fruits = ['apple', 'banana', 'cherry'] # Initialize an empty dictionary fruit_dict = {} # Populate the dictionary using a loop for idx, fruit in enumerate(fruits): fruit_dict[idx] = fruit print(fruit_dict)
Produksjon:
skive java array
{0: 'apple', 1: 'banana', 2: 'cherry'}
I dette eksemplet brukes enumerate()-funksjonen til å iterere over listen samtidig som den holder styr på indeksen. Hvert element i listen er tildelt en unik indeks som nøkkelen i ordboken.
Metode 2: Bruk zip()
En annen metode for å konvertere en liste til en ordbok er å bruke zip()-funksjonen. Denne funksjonen parer elementer fra flere iterables, for eksempel lister, sammen. Her er et eksempel:
'kruskals algoritme'
# List of fruits and their prices fruits = ['apple', 'banana', 'cherry'] prices = [1.00, 0.50, 1.50] # Convert lists to a dictionary using zip() fruit_dict = dict(zip(fruits, prices)) print(fruit_dict)
Produksjon:
{'apple': 1.0, 'banana': 0.5, 'cherry': 1.5}
I dette eksemplet parer zip()-funksjonen hver frukt med dens tilsvarende pris, og lager et nøkkelverdi-par i ordboken.
utbyggerdesignmønster
Metode 3: Bruke ordbokforståelse
Python gir også en kortfattet måte å konvertere en liste til en ordbok ved å bruke ordbokforståelse. Denne metoden er spesielt nyttig når du vil utføre en operasjon på elementene i listen. Her er et eksempel:
# List of fruits fruits = ['apple', 'banana', 'cherry'] # Convert list to a dictionary using dictionary comprehension fruit_dict = {fruit: len(fruit) for fruit in fruits} print(fruit_dict)
Produksjon:
{'apple': 5, 'banana': 6, 'cherry': 6}
I dette eksemplet lager ordbokforståelsen en ordbok der hver frukt er en nøkkel, og verdien er lengden på fruktens navn.