Woordenboeken in Python

Woordenboeken in Python

Een Python-woordenboek is een gegevensstructuur die de waarde opslaat in sleutel:waarde-paren.

Voorbeeld:

Zoals u in het voorbeeld kunt zien, worden gegevens opgeslagen in sleutel:waarde-paren in woordenboeken, waardoor het gemakkelijker wordt om waarden te vinden .

Uitgang:

{1: 'Geeks', 2: 'For', 3: 'Geeks'} 

Python-woordenboeksyntaxis

dict_var = {sleutel1: waarde1, sleutel2: waarde2, …..}

Wat is een woordenboek in Python?

Woordenboeken in Python zijn een gegevensstructuur die wordt gebruikt om waarden op te slaan in het sleutel:waarde-formaat. Dit maakt het anders dan lijsten, tupels en arrays, omdat in een woordenboek elke sleutel een bijbehorende waarde heeft.

Opmerking: Vanaf Python versie 3.7 zijn woordenboeken geordend en mogen ze geen dubbele sleutels bevatten.

Hoe u een woordenboek maakt

In Python , kan een woordenboek worden gemaakt door een reeks elementen in curly te plaatsen {} accolades, gescheiden door een ‘komma’.

Het woordenboek bevat waardenparen, waarvan er één de sleutel is en het andere overeenkomstige paarelement het zijne Sleutel waarde .

Waarden in een woordenboek kunnen van elk gegevenstype zijn en kunnen worden gedupliceerd, terwijl sleutels niet kunnen worden herhaald en dat wel moeten onveranderlijk .

Opmerking - Woordenboeksleutels zijn hoofdlettergevoelig; dezelfde naam, maar verschillende hoofdletters en kleine letters worden afzonderlijk behandeld.

De code demonstreert het maken van woordenboeken met verschillende soorten sleutels. Het eerste woordenboek gebruikt integer-sleutels, en het tweede woordenboek gebruikt een combinatie van string- en integer-sleutels met bijbehorende waarden. Dit toont de flexibiliteit van Python-woordenboeken bij het verwerken van verschillende gegevenstypen als sleutels.

Uitvoer

Dictionary with the use of Integer Keys:  {1: 'Geeks', 2: 'For', 3: 'Geeks'} Dictionary with the use of Mixed Keys:  {'Name': 'Geeks', 1: [1, 2, 3, 4]} 

Woordenboek voorbeeld

Er kan ook een woordenboek worden aangemaakt met de ingebouwde functie dict(). Een leeg woordenboek kan worden gemaakt door accolades{} te plaatsen.

Verschillende manieren om een ​​Python-woordenboek te maken

De code demonstreert verschillende manieren om woordenboeken in Python te maken. Er wordt eerst een leeg woordenboek gemaakt en vervolgens wordt getoond hoe u woordenboeken kunt maken met behulp van de dict() constructor met sleutelwaardeparen gespecificeerd tussen accolades en als een lijst met tupels.

Uitgang:

Empty Dictionary:  {} Dictionary with the use of dict():  {1: 'Geeks', 2: 'For', 3: 'Geeks'} Dictionary with each item as a pair:  {1: 'Geeks', 2: 'For'} 

Complexiteiten bij het maken van een woordenboek:

  • Tijdcomplexiteit: O(len(dict))
  • Ruimtecomplexiteit: Op)

Geneste woordenboeken

Voorbeeld : De code definieert een genest woordenboek met de naam ‘Dict’ met meerdere niveaus van sleutel-waardeparen. Het bevat een woordenboek op het hoogste niveau met de sleutels 1, 2 en 3. De waarde die aan sleutel 3 is gekoppeld, is een ander woordenboek met de sleutels 'A', 'B' en 'C'. Dit laat zien hoe Python-woordenboeken kunnen worden genest om te maken hiërarchische datastructuren.

Uitgang:

{1: 'Geeks', 2: 'For', 3: {'A': 'Welcome', 'B': 'To', 'C': 'Geeks'}} 

Meer Python genest woordenboek

Elementen aan een woordenboek toevoegen

Het toevoegen van elementen kan op meerdere manieren. Er kan één waarde tegelijk aan een woordenboek worden toegevoegd door de waarde samen met de sleutel te definiëren, b.v. Dict[Sleutel] = ‘Waarde’.

Het bijwerken van een bestaande waarde in een woordenboek kan worden gedaan met behulp van de ingebouwde update() methode. Geneste sleutelwaarden kunnen ook worden toegevoegd aan een bestaand woordenboek.

Opmerking- Als tijdens het toevoegen van een waarde de sleutelwaarde al bestaat, wordt de waarde bijgewerkt, anders wordt een nieuwe sleutel met de waarde aan de woordenlijst toegevoegd.

Voorbeeld: items toevoegen aan een Python-woordenboek met verschillende gegevenstypen

De code begint met een leeg woordenboek en voegt er vervolgens sleutel-waardeparen aan toe. Het demonstreert het toevoegen van elementen met verschillende gegevenstypen, het bijwerken van de waarde van een sleutel en zelfs het nesten van woordenboeken in het hoofdwoordenboek. De code laat zien hoe woordenboeken in Python kunnen worden gemanipuleerd.

Uitgang:

Empty Dictionary:  {} Dictionary after adding 3 elements:  {0: 'Geeks', 2: 'For', 3: 1} Dictionary after adding 3 elements:  {0: 'Geeks', 2: 'For', 3: 1, 'Value_set': (2, 3, 4)} Updated key value:  {0: 'Geeks', 2: 'Welcome', 3: 1, 'Value_set': (2, 3, 4)} Adding a Nested Key:  {0: 'Geeks', 2: 'Welcome', 3: 1, 'Value_set': (2, 3, 4), 5:  {'Nested': {'1': 'Life', '2': 'Geeks'}}} 

Complexiteiten bij het toevoegen van elementen aan een woordenboek:

  • Tijdcomplexiteit: O(1)/O(n)
  • Ruimtecomplexiteit: O(1)

Toegang tot elementen van een woordenboek

Om toegang te krijgen tot de items van een woordenboek, raadpleegt u de sleutelnaam. De sleutel kan tussen vierkante haakjes worden gebruikt.

Toegang tot een waarde in Python Dictionary

De code laat zien hoe u met behulp van sleutels toegang krijgt tot elementen in een woordenboek. Het opent en drukt de waarden af ​​die zijn gekoppeld aan de sleutels 'naam' en 1, wat aantoont dat sleutels van verschillende gegevenstypen kunnen zijn (tekenreeks en geheel getal).

Uitgang:

Accessing a element using key: For Accessing a element using key: Geeks 

Er is ook een methode genaamd krijgen() dat zal ook helpen bij het verkrijgen van toegang tot het element vanuit een woordenboek. Deze methode accepteert sleutel als argument en retourneert de waarde.

Complexiteiten voor toegang tot elementen in een woordenboek:

  • Tijdcomplexiteit: O(1)
  • Ruimtecomplexiteit: O(1)

Voorbeeld: Krijg toegang tot een waarde in Dictionary met get() in Python

De code demonstreert toegang tot een woordenboekelement met behulp van de krijgen() methode. Het haalt de waarde op die bij sleutel 3 in het woordenboek hoort en drukt deze af ‘Dict’ . Deze methode biedt een veilige manier om toegang te krijgen tot woordenboekwaarden, waarbij KeyError wordt vermeden als de sleutel niet bestaat.

Uitgang:

Accessing a element using get: Geeks 

Toegang krijgen tot een element van een genest woordenboek

Gebruik de syntaxis indexering [] om toegang te krijgen tot de waarde van een willekeurige sleutel in het geneste woordenboek.

Voorbeeld : De code werkt met geneste woordenboeken. Het opent eerst het volledige geneste woordenboek dat aan de sleutel is gekoppeld en drukt het af ‘Dict1’ . Vervolgens wordt een specifieke waarde geopend en afgedrukt door door de geneste woordenboeken te navigeren. Ten slotte haalt het de waarde op die aan de sleutel is gekoppeld en drukt deze af 'Naam' in het geneste woordenboek eronder ‘Dict2’ .

Uitgang:

{1: 'Geeks'} Geeks For 

Elementen verwijderen met het trefwoord ‘del’

De items van het woordenboek kunnen worden verwijderd door het trefwoord del te gebruiken, zoals hieronder aangegeven.

Voorbeeld : De code definieert een woordenboek, drukt de originele inhoud af en gebruikt vervolgens de 'van de' instructie om het element te verwijderen dat is gekoppeld aan sleutel 1. Na verwijdering wordt het bijgewerkte woordenboek afgedrukt, waaruit blijkt dat het opgegeven element is verwijderd.

Uitvoer

  Dictionary ={1: 'Geeks', 'name': 'For', 3: 'Geeks'} Data after deletion Dictionary={'name': 'For', 3: 'Geeks'} 

Woordenboekmethoden

Hier is een lijst met ingebouwde woordenboekfuncties met hun beschrijving. U kunt deze functies gebruiken om met een woordenboek te werken.

Methode Beschrijving
dict.clear() Verwijder alle elementen uit het woordenboek
dict.copy() Retourneert een kopie van het woordenboek
dict.get(sleutel, standaard = Geen) Retourneert de waarde van de opgegeven sleutel
dict.items() Retourneert een lijst met een tuple voor elk sleutelwaardepaar
dict.keys() Retourneert een lijst met woordenboeksleutels
dict.update(dict2) Werkt het woordenboek bij met opgegeven sleutel-waardeparen
dict.values() Retourneert een lijst met alle waarden van het woordenboek
knal() Verwijder het element met de opgegeven sleutel
popItem() Verwijdert het laatst ingevoegde sleutel-waardepaar
dict.setdefault(sleutel,standaard= Geen) stel de sleutel in op de standaardwaarde als de sleutel niet is opgegeven in het woordenboek
dict.has_key(sleutel) retourneert waar als het woordenboek de opgegeven sleutel bevat.

Voor gedetailleerde uitleg: Python-woordenboekmethoden

Meerdere woordenboekbewerkingen in Python

De code begint met een woordenboek ‘dict1’ en maakt een kopie ‘dict2’ . Vervolgens demonstreert het verschillende woordenboekbewerkingen: opschonen ‘dict1’ , toegang krijgen tot waarden, sleutel-waardeparen en sleutels ophalen, specifieke sleutel-waardeparen verwijderen, een waarde bijwerken en waarden ophalen. Deze bewerkingen laten zien hoe u met woordenboeken in Python kunt werken.

Uitgang:

{1: 'Python', 2: 'Java', 3: 'Ruby', 4: 'Scala'} {} Python dict_items([(1, 'Python'), (2, 'Java'), (3, 'Ruby'), (4, 'Scala')]) dict_keys([1, 2, 3, 4]) {1: 'Python', 2: 'Java', 3: 'Ruby'} {1: 'Python', 2: 'Java'} {1: 'Python', 2: 'Java', 3: 'Scala'} dict_values(['Python', 'Java', 'Scala']) 

We hebben alles over woordenboeken in Python besproken, de definitie en het gebruik ervan besproken en verschillende woordenboekmethoden met voorbeelden gezien. Het woordenboek is een belangrijke datastructuur voor het opslaan van gegevens in Python. Het is heel anders dan tupels en lijsten.

Lees verder Data structuren in Python

Lees ook:

  • Hoe maak je een woordenboek in Python
  • Verschil tussen lijst en woordenboek in Python
  • Python | Twee woordenboeken samenvoegen