Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python - Woordenboek

Vorige paginaVolgende pagina

Elke sleutel wordt van zijn waarde gescheiden door een dubbele punt (:), de items worden gescheiden door komma's en het geheel staat tussen accolades. Een leeg woordenboek zonder items wordt geschreven met slechts twee accolades, zoals dit:{}.

Sleutels zijn uniek binnen een woordenboek, terwijl waarden dat misschien niet zijn. De waarden van een woordenboek kunnen van elk type zijn, maar de sleutels moeten van een onveranderlijk gegevenstype zijn, zoals tekenreeksen, getallen of tupels.

Toegang tot waarden in woordenboek

Om toegang te krijgen tot woordenboekelementen, kunt u de bekende vierkante haken gebruiken samen met de sleutel om de waarde ervan te verkrijgen. Hieronder volgt een eenvoudig voorbeeld −

Live demo
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Name']: ", dict['Name']
print "dict['Age']: ", dict['Age']

Wanneer de bovenstaande code wordt uitgevoerd, levert dit het volgende resultaat op −

dict['Name']:  Zara
dict['Age']:  7

Als we proberen toegang te krijgen tot een gegevensitem met een sleutel die geen deel uitmaakt van het woordenboek, krijgen we als volgt een foutmelding −

Live demo
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Alice']: ", dict['Alice']

Wanneer de bovenstaande code wordt uitgevoerd, levert dit het volgende resultaat op −

dict['Alice']:
Traceback (most recent call last):
   File "test.py", line 4, in <module>
      print "dict['Alice']: ", dict['Alice'];
KeyError: 'Alice'

Woordenboek bijwerken

U kunt een woordenboek bijwerken door een nieuw item of een sleutel/waarde-paar toe te voegen, een bestaand item te wijzigen of een bestaand item te verwijderen, zoals hieronder in het eenvoudige voorbeeld wordt getoond −

Live demo
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry

print "dict['Age']: ", dict['Age']
print "dict['School']: ", dict['School']

Wanneer de bovenstaande code wordt uitgevoerd, levert dit het volgende resultaat op −

dict['Age']:  8
dict['School']:  DPS School

Woordenwoordenboekelementen verwijderen

U kunt afzonderlijke woordenboekelementen verwijderen of de volledige inhoud van een woordenboek wissen. U kunt ook het hele woordenboek in één keer verwijderen.

Om expliciet een volledig woordenboek te verwijderen, gebruikt u gewoon de del uitspraak. Hieronder volgt een eenvoudig voorbeeld −

Live demo
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
del dict['Name']; # remove entry with key 'Name'
dict.clear();     # remove all entries in dict
del dict ;        # delete entire dictionary

print "dict['Age']: ", dict['Age']
print "dict['School']: ", dict['School']

Dit levert het volgende resultaat op. Merk op dat er een uitzondering wordt gemaakt omdat na del dict woordenboek bestaat niet meer −

dict['Age']:
Traceback (most recent call last):
   File "test.py", line 8, in <module>
      print "dict['Age']: ", dict['Age'];
TypeError: 'type' object is unsubscriptable

Opmerking De methode del() wordt in de volgende sectie besproken.

Eigenschappen van woordenboeksleutels

Woordenboekwaarden hebben geen beperkingen. Ze kunnen elk willekeurig Python-object zijn, standaardobjecten of door de gebruiker gedefinieerde objecten. Hetzelfde geldt echter niet voor de toetsen.

Er zijn twee belangrijke punten om te onthouden over woordenboeksleutels −

(a) Meer dan één invoer per sleutel is niet toegestaan. Wat betekent dat er geen dubbele sleutel is toegestaan. Wanneer dubbele sleutels worden aangetroffen tijdens de toewijzing, wint de laatste toewijzing. Bijvoorbeeld −

Live demo
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'}
print "dict['Name']: ", dict['Name']

Wanneer de bovenstaande code wordt uitgevoerd, levert dit het volgende resultaat op −

dict['Name']:  Manni

(b) Sleutels moeten onveranderlijk zijn. Dat betekent dat je strings, cijfers of tuples als woordenboeksleutels kunt gebruiken, maar zoiets als ['key'] is niet toegestaan. Hieronder volgt een eenvoudig voorbeeld −

Live demo
#!/usr/bin/python

dict = {['Name']: 'Zara', 'Age': 7}
print "dict['Name']: ", dict['Name']

Wanneer de bovenstaande code wordt uitgevoerd, levert dit het volgende resultaat op −

Traceback (most recent call last):
   File "test.py", line 3, in <module>
      dict = {['Name']: 'Zara', 'Age': 7};
TypeError: unhashable type: 'list'

Ingebouwde woordenboekfuncties en -methoden

Python bevat de volgende woordenboekfuncties −

Sr.nr. Functie met beschrijving
1 cmp(dict1, dict2)

Vergelijkt elementen van beide dictaat.

2 len(dictaat)

Geeft de totale lengte van het woordenboek. Dit zou gelijk zijn aan het aantal items in het woordenboek.

3 str(dict)

Produceert een afdrukbare tekenreeksrepresentatie van een woordenboek

4 type(variabele)

Retourneert het type van de doorgegeven variabele. Als de doorgegeven variabele een woordenboek is, zou het een woordenboektype retourneren.

Python bevat de volgende woordenboekmethoden −

Sr.nr. Methoden met beschrijving
1 dict.clear()

Verwijdert alle elementen van woordenboek dict

2 dict.copy()

Retourneert een oppervlakkige kopie van het woordenboek dict

3 dict.fromkeys()

Maak een nieuw woordenboek met sleutels van seq en waarden set waarderen .

4 dict.get(key, default=Geen)

Voor sleutel key, retourneert waarde of standaard indien sleutel niet in woordenboek staat

5 dict.has_key(sleutel)

Retourneert waar if key in woordenboek dict , vals anders

6 dict.items()

Retourneert een lijst met dict 's (sleutel, waarde) tuple-paren

7 dict.keys()

Geeft een lijst met de dictaatsleutels van het woordenboek terug

8 dict.setdefault(key, default=Geen)

Gelijk aan get(), maar zal dict[key]=default instellen als key is nog niet in dictee

9 dict.update(dict2)

Voegt woordenboek dict2 toe 's sleutel-waarden paren aan dict

10 dict.waarden()

Geeft lijst met woordenboek dict . terug 's waarden


Python

  1. Python-gegevenstypen
  2. Python-operators
  3. Python pass-instructie
  4. Python-functieargumenten
  5. Python-woordenboek
  6. Python-iterators
  7. Python-sluitingen
  8. Python datetime
  9. Python - Overzicht
  10. Python - Cijfers
  11. Python - Strings