Python >> Python Program >  >> Python

Hur lägger man till nya nycklar till en ordbok i Python?

I det här inlägget kommer vi att lära oss hur du lägger till nya nycklar till en ordbok i Python.

Hur lägger man till nya nycklar till en ordbok i Python?

Du skapar ett nytt nyckel/värdepar i en ordbok genom att tilldela den nyckeln ett värde

d = {'key': 'value'}
print(d)  # {'key': 'value'}

d['mynewkey'] = 'mynewvalue'

print(d)  # {'key': 'value', 'mynewkey': 'mynewvalue'}

Om nyckeln inte finns läggs den till och pekar på det värdet. Om det finns skrivs det aktuella värdet den pekar mot.

För detaljerad information om ordböcker och andra datatyper i Python, besök det här inlägget om datatyper i Python .

Hur lägger man till flera nycklar till en ordbok samtidigt i Python?

För att lägga till flera nycklar samtidigt, använd dict.update() :

>>> x = {1:2}
>>> print(x)
{1: 2}

>>> d = {3:4, 5:6, 7:8}
>>> x.update(d)
>>> print(x)
{1: 2, 3: 4, 5: 6, 7: 8}

För mer detaljerad information, följ inlägget nedan.

Information om ordböcker i Python:

Jag känner för att konsolidera information om Python-ordböcker:

Skapa en tom ordbok

data = {}
# OR
data = dict()

Skapa en ordbok med initiala värden

data = {'a': 1, 'b': 2, 'c': 3}
# OR
data = dict(a=1, b=2, c=3)
# OR
data = {k: v for k, v in (('a', 1), ('b',2), ('c',3))}

Infoga/uppdatera ett enstaka värde i en ordbok

data['a'] = 1  # Updates if 'a' exists, else adds 'a'
# OR
data.update({'a': 1})
# OR
data.update(dict(a=1))
# OR
data.update(a=1)

Infoga/uppdatera flera värden i en ordbok

data.update({'c':3,'d':4})  # Updates 'c' and adds 'd'

Python 3.9+:

uppdateringsoperatören |= fungerar nu för ordböcker:

data |= {'c':3,'d':4}

Skapa en sammanslagen ordbok utan att ändra original

data3 = {}
data3.update(data)  # Modifies data3, not data
data3.update(data2)  # Modifies data3, not data2

Python 3.5+:

Detta använder en ny funktion som heter uppackning av ordbok .

data = {**data1, **data2, **data3}

Python 3.9+:

merge-operatorn | fungerar nu för ordböcker:

data = data1 | {'c':3,'d':4}

Hur man tar bort objekt i ordboken

del data[key]  # Removes specific element in a dictionary
data.pop(key)  # Removes the key & returns the value
data.clear()  # Clears entire dictionary

Hur man kontrollerar om en nyckel redan finns i ordboken

key in data

Hur man itererar genom par i en ordbok

for key in data: # Iterates just through the keys, ignoring the values
for key, value in d.items(): # Iterates through the pairs
for key in d.keys(): # Iterates just through key, ignoring the values
for value in d.values(): # Iterates just through value, ignoring the keys

Hur man skapar en ordbok från två listor

data = dict(zip(list_with_keys, list_with_values))

Om du vill lägga till en ordbok i en ordbok kan du göra det på detta sätt.

Exempel:Lägg till en ny post i din ordbok och underordbok

dictionary = {}
dictionary["new key"] = "some new entry" # add new dictionary entry
dictionary["dictionary_within_a_dictionary"] = {} # this is required by python
dictionary["dictionary_within_a_dictionary"]["sub_dict"] = {"other" : "dictionary"}
print (dictionary)

Utdata:

{'new key': 'some new entry', 'dictionary_within_a_dictionary': {'sub_dict': {'other': 'dictionarly'}}}

OBS: Python kräver att du först lägger till en sub

dictionary["dictionary_within_a_dictionary"] = {}

innan du lägger till poster.