Python ordningar
- Föregående Sida Python uppsättningar
- Nästa Sida Python Om Else
Ordbok (Dictionary)
Ordbok är en oordnad, flytande och indexbar samling. I Python skrivs ordboken med kolon, och har nycklar och värden.
Exempel
Skapa och skriv ut ordbok:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } print(thisdict)
Komma åt objekt
Du kan komma åt objektet genom att referera till dess nyckelnamn inom klamrar:
Exempel
Hämta värdet för nyckeln 'model':
x = thisdict["model"]
Det finns också en metod som kallas get()
Metoden ger dig samma resultat:
Exempel
Hämta värdet för nyckeln 'model':
x = thisdict.get("model")
Ändra värde
Du kan ändra värdet för ett specifikt objekt genom att referera till dess nyckelnamn:
Exempel
Ändra 'year' till 2019:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict["year"] = 2019
Traversera ordboken
Du kan använda for
När du traverserar ordboken.
När du traverserar ordboken, returneras värdet ordbokens nyckel, men det finns också metoder som returnerar värden.
Exempel
Skriv ut alla nyckelnamn i ordboken en efter en:
for x in thisdict: print(x)
Exempel
Skriv ut alla värden i ordboken en efter en:
for x in thisdict: print(thisdict[x])
Exempel
Du kan också använda values()
Funktionen returnerar ordbokens värden:
for x in thisdict.values(): print(x)
Exempel
Genom att använda items() funktionen kan du traversera nycklar och värden:
for x, y in thisdict.items(): print(x, y)
Kontrollera om nyckeln finns
För att bestämma om en specifik nyckel finns i ordboken, använd: in
Nyckel:
Exempel
Kontrollera om 'model' finns i ordboken:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } if "model" in thisdict: print("Ja, 'model' är en av nycklarna i thisdict-ordboken")
Ordbokslängd
För att bestämma hur många poster (nyckel-värde-par) som finns i ordboken, använd: len()
Metod.
Exempel
Skriv ut antalet poster i ordboken:
print(len(thisdict))
Lägg till post
Genom att använda en ny nyckel och tilldela den, kan du lägga till poster till ordboken:
Exempel
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict["color"] = "red" print(thisdict)
Ta bort post
Det finns flera sätt att ta bort poster från en ordbok:
Exempel
pop() metoden tar bort posten med det specificerade nyckelnamnet:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict.pop("model") print(thisdict)
Exempel
popitem()
Metoden för att ta bort det sista inskrivna objektet (i versioner innan 3.7, ta bort ett slumpmässigt objekt):
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict.popitem()} print(thisdict)
Exempel
del
nyckel tar bort objekt med specifik nyckelnamn:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } del thisdict["model"] print(thisdict)
Exempel
del
nyckel kan också helt ta bort ordboken:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } del thisdict print(thisdict) #this 会导致错误,因为 "thisdict" 不再存在。
Exempel
clear()
nyckel tömmer ordboken:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } thisdict.clear() print(thisdict)
kopiera ordbok
Du kan inte genom att skriva dict2 = dict1
att kopiera ordboken, eftersom:dict2
bara en dict1
citat, medan dict1
ändringar kommer också att automatiskt i dict2
gör detta.
Det finns några metoder för att kopiera, en metod är att använda inbyggda ordboksmetoder copy()
。
Exempel
Använd copy()
metoden för att kopiera ordbok:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } mydict = thisdict.copy() print(mydict)
En annan metod att skapa en kopia är att använda inbyggd metod dict()
。
Exempel
Använd dict()
Metoden skapar en kopia av ordboken:
thisdict = { "brand": "Porsche", "model": "911", "year": 1963 } mydict = dict(thisdict) print(mydict)
Nästlade ordböcker
En ordbok kan också innehålla många ordböcker, detta kallas nästlade ordböcker.
Exempel
Skapa en ordbok som innehåller tre ordböcker:
myfamily = { "child1" : { "name" : "Phoebe Adele", "year" : 2002 }, "child2" : { "name" : "Jennifer Katharine", "year" : 1996 }, "child3" : { "name" : "Rory John", "year" : 1999 } }
Eller om du vill nästla tre redan existerande ordböcker:
Exempel
Skapa tre ordböcker och sedan skapa en ordbok som innehåller de tre andra ordböckerna:
child1 = { "name" : "Phoebe Adele", "year" : 2002 } child2 = { "name" : "Jennifer Katharine", "year" : 1996 } child3 = { "name" : "Rory John", "year" : 1999 } myfamily = { "child1" : child1, "child2" : child2, "child3" : child3 }
dict() konstruktorn
Man kan också använda dict()
Konstruktorn skapar ett nytt ordbok:
Exempel
thisdict = dict(brand="Porsche", model="911", year=1963) # Observera att nyckelordet inte är en sträng # Observera att använde likhetstecken istället för kolon för tilldelning print(thisdict)
Ordboksmetoder
Python tillhandahåller ett antal inbyggda metoder som kan användas på ordböcker.
Metod | Beskrivning |
---|---|
clear() | Ta bort alla element från ordboken |
copy() | Returnera en kopia av ordboken |
fromkeys() | Returnera ordboken med den specificerade nyckeln och värdet |
get() | Returnera värdet för den specificerade nyckeln |
items() | Returnera en lista med tupler som innehåller varje nyckel-värdepar |
keys() | Returnera en lista som innehåller ordbokens nycklar |
pop() | Ta bort elementet med den specificerade nyckeln |
popitem() | Ta bort den sista inskrivna nyckel-värdeparen |
setdefault() | Returnera värdet för den specificerade nyckeln. Om nyckeln inte finns, lägg till en nyckel med det specificerade värdet. |
update() | Uppdatera ordboken med specifika nyckel-värdepar |
values() | Returnera en lista med alla värden i ordboken |
- Föregående Sida Python uppsättningar
- Nästa Sida Python Om Else