logo

Python | Voeg nieuwe sleutels toe aan een woordenboek

Voordat we leren hoe we items aan een woordenboek kunnen toevoegen, moeten we eerst in het kort begrijpen wat een woordenboek is. Een woordenboek in Python is een ongeordende verzameling gegevenswaarden, gebruikt om gegevenswaarden op te slaan als een kaart. In tegenstelling tot andere gegevenstypen die slechts één enkele waarde als element bevatten, bevat een woordenboek een sleutel: waardepaar.

Sleutelwaarde wordt in het woordenboek opgenomen om het geoptimaliseerd te maken. Een dubbele punt scheidt elk sleutel-waardepaar in een woordenboek: terwijl elke sleutel wordt gescheiden door een ‘komma’.



De sleutels van een woordenboek moeten uniek zijn en van onveranderlijke gegevenstypen zijn, zoals tekenreeksen, gehele getallen en tupels, maar de sleutelwaarden kunnen worden herhaald en van elk type zijn. In dit artikel bespreken we hoe u een Woordenboek in Python .

Sleutels en waarden toevoegen aan een woordenboek

Om een ​​nieuw item aan het woordenboek toe te voegen, moet u een nieuwe sleutel toevoegen en er een nieuwe waarde aan toevoegen. Er zijn verschillende methoden om items toe te voegen aan een woordenboek in Python hier leggen we enkele algemeen gebruikte methoden uit toevoegen aan een woordenboek in Python.

  1. Subscript-notatie gebruiken
  2. Met behulp van de update()-methode
  3. Met behulp van de __setitem__-methode
  4. Met behulp van de **-operator
  5. If-instructies gebruiken
  6. Methode enumerate() gebruiken
  7. Zip gebruiken
  8. Een aangepaste klasse gebruiken
  9. Samenvoegen gebruiken | Exploitant

Voeg toe aan een Python-woordenboek met behulp van de subscriptnotatie

Deze methode creëert een nieuw sleutel/waarde-paar in een woordenboek door een waarde aan die sleutel toe te wijzen. Als de sleutel niet bestaat, wordt deze toegevoegd en naar die waarde verwezen. Als de sleutel bestaat, wordt de huidige waarde ervan overschreven.



Python3






dict> => {>'key1'>:>'geeks'>,>'key2'>:>'fill_me'>}> print>(>'Current Dict is:'>,>dict>)> # using the subscript notation> # Dictionary_Name[New_Key_Name] = New_Key_Value> dict>[>'key2'>]>=> 'for'> dict>[>'key3'>]>=> 'geeks'> print>(>'Updated Dict is:'>,>dict>)>

>

>

Uitvoer

Current Dict is: {'key1': 'geeks', 'key2': 'fill_me'} Updated Dict is: {'key1': 'geeks', 'key2': 'for', 'key3': 'geeks'}>

Voeg toe aan een Python-woordenboek met behulp van de update()-methode

Wanneer we veel sleutels/waarden aan het woordenboek moeten bijwerken/toevoegen, kan de update() methode geschikt is. De update() -methode voegt de opgegeven items in het woordenboek in.

Python3


Java instellen



dict> => {>'key1'>:>'geeks'>,>'key2'>:>'for'>}> print>(>'Current Dict is:'> ,>dict>)> # adding key3> dict>.update({>'key3'>:>'geeks'>})> print>(>'Updated Dict is:'>,>dict>)> # adding dict1 (key4 and key5) to dict> dict1>=> {>'key4'>:>'is'>,>'key5'>:>'fabulous'>}> dict>.update(dict1)> print>(>'After adding dict1 is:'> ,>dict>)> # by assigning> dict>.update(newkey1>=>'portal'>)> print>(>'After asssigning new key:'> ,>dict>)>

>

>

Uitgang:

Current Dict is: {'key1': 'geeks', 'key2': 'for'} Updated Dict is: {'key1': 'geeks', 'key2': 'for', 'key3': 'geeks'} After adding dict1 is: {'key1': 'geeks', 'key2': 'for', 'key3': 'geeks', 'key4': 'is', 'key5': 'fabulous'} After asssigning new key: {'key1': 'geeks', 'key2': 'for', 'key3': 'geeks', 'key4': 'is', 'key5': 'fabulous', 'newkey1': 'portal'}>

Voeg toe aan Python Dictionary met behulp van de __setitem__-methode

De __sentiment__ methode wordt gebruikt om een ​​sleutel-waardepaar aan een woordenboek toe te voegen. Het moet worden vermeden vanwege de slechte prestaties (computationeel inefficiënt).

Python3




dict> => {>'key1'>:>'geeks'>,>'key2'>:>'for'>}> # using __setitem__ method> dict>.__setitem__(>'newkey2'>,>'GEEK'>)> print>(>dict>)>

>

>

Uitgang:

{'key1': 'geeks', 'key2': 'for', 'newkey2': 'GEEK'}>

Voeg toe aan Python Dictionary met behulp van de ** Operator

We kunnen het oude woordenboek en het nieuwe sleutel/waarde-paar samenvoegen in een ander woordenboek. Gebruik makend van ** vóór sleutel-waardeparen zoals **{‘c’: 3} zal het uitpakken als een nieuw woordenboekobject.

Python3


voor stringarray java



dict> => {>'a'>:>1>,>'b'>:>2>}> # will create a new dictionary> new_dict>=> {>*>*>dict>,>*>*>{>'c'>:>3>}}> print>(>dict>)> print>(new_dict)>

>

>

Uitgang:

{'a': 1, 'b': 2} {'a': 1, 'b': 2, 'c': 3}>

Voeg toe aan Python Dictionary met behulp van de in-operator en IF-instructies

Als de sleutel nog niet in het woordenboek aanwezig is, wordt de sleutel aan het woordenboek toegevoegd met behulp van de als verklaring . Als wordt beoordeeld dat het onwaar is, wordt de Woordenboek heeft al een sleutel bericht wordt afgedrukt.

Python3




mydict>=> {>'a'>:>1>,>'b'>:>2>,>'c'>:>3>}> if> 'd'> not> in> mydict:> >mydict[>'d'>]>=> '4'> else>:> >print>(>'Dictionary already has key : One. Hence value is not overwritten '>)> print>(mydict)>

>

>

Uitgang:

{'a': 1, 'b': 2, 'c': 3, 'd': '4'}>

Voeg toe aan Python Dictionary met behulp van de methode enumerate().

Gebruik de opsommen() methode om de lijst te herhalen en vervolgens elk item aan het woordenboek toe te voegen door de index ervan als sleutel voor elke waarde te gebruiken.

Python3




list1>=> {>'a'>:>1>,>'b'>:>2>,>'c'>:>3>}> list2>=> [>'one: x'>,>'two:y'>,>'three:z'>]> # Using for loop enumerate()> for> i, val>in> enumerate>(list2):> >list1[i]>=> val> print>(list1)>

c programma voor tweedimensionale array

>

>

Uitgang:

{'a': 1, 'b': 2, 'c': 3, 0: 'one: x', 1: 'two:y', 2: 'three:z'}>

Voeg meerdere items toe aan een Python-woordenboek met Zip

In dit voorbeeld gebruiken we a zip-methode van Python voor sleutels en waarden toevoegen aan een lege woordenboekpython . U kunt ook een in het bestaande woordenboek gebruiken om elementen aan het woordenboek toe te voegen in plaats van een woordenboek = {}.

Python3




dictionary>=> {}> keys>=> [>'key2'>,>'key1'>,>'key3'>]> values>=> [>'geeks'>,>'for'>,>'geeks'>]> for> key, value>in> zip>(keys, values):> >dictionary[key]>=> value> print>(dictionary)>

>

>

Uitgang:

{'key2': 'geeks', 'key1': 'for', 'key3': 'geeks'}>

Voeg nieuwe sleutels toe aan Python Dictionary met een aangepaste klasse

In eerste instantie moeten we leren hoe we woordenboeken maken in Python. Het definieert een klasse genaamd mijn woordenboek dat erft van het ingebouwde dictaat klas. De klas heeft een __init__ methode die een leeg woordenboek initialiseert, en een aangepaste add-methode die sleutel-waardeparen aan het woordenboek toevoegt.

Python3




# Create your dictionary class> class> my_dictionary(>dict>):> ># __init__ function> >def> __init__(>self>):> >self> => dict>()> ># Function to add key:value> >def> add(>self>, key, value):> >self>[key]>=> value> # Main Function> dict_obj>=> my_dictionary()> dict_obj.add(>1>,>'Geeks'>)> dict_obj.add(>2>,>'forGeeks'>)> print>(dict_obj)>

>

Junit-testgevallen
>

Uitgang:

{1: 'Geeks', 2: 'forGeeks'}>

Voeg nieuwe sleutels toe aan een woordenboek met behulp van Samenvoegen | Exploitant

In dit voorbeeld voegt de onderstaande Python-code nieuwe sleutel-waardeparen toe aan een bestaand woordenboek met behulp van de merge-operator `|=`. Het `my_dict`-woordenboek is bijgewerkt en bevat de nieuwe sleutels en waarden uit het `new_data`-woordenboek.

Python3




# Existing dictionary> my_dict>=> {>'name'>:>'John'>,>'age'>:>25>}> # New key-value pairs to add> new_data>=> {>'city'>:>'New York'>,>'gender'>:>'Male'>}> # Adding new keys using the merge operator> my_dict |>=> new_data> # Display the updated dictionary> print>(my_dict)>

>

>

Uitgang:

{'name': 'John', 'age': 25, 'city': 'New York', 'gender': 'Male'}>

In deze zelfstudie hebben we meerdere manieren besproken om items aan een Python-woordenboek toe te voegen. We hebben eenvoudige manieren besproken, zoals de update()-methode, en complexe manieren, zoals het maken van je eigen klasse. Afhankelijk of je een beginner of een gevorderde programmeur bent, kun je kiezen uit een grote verscheidenheid aan technieken om toe te voegen aan een woordenboek in Python.

U kunt meer informatieve artikelen lezen over hoe u iets aan een woordenboek kunt toevoegen: