Python Language Dictionary: Difference between revisions
Line 73: | Line 73: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Note that if the key being deleted does not exist, the <code>[]</code> syntax will throw an <code>KeyError</code> exception. | Note that if the key being deleted does not exist, the <code>[]</code> syntax will throw an <code>KeyError</code> exception. | ||
==Delete All Items== | |||
Use the <code>clear()</code> function: | |||
<syntaxhighlight lang='py'> | |||
d = {...} | |||
d.clear() | |||
</syntaxhighlight> | |||
==Combine Dictionaries== | ==Combine Dictionaries== |
Revision as of 20:24, 16 February 2022
Internal
Overview
A dictionary is a mutable collection of key-value pairs. The pairs can be accessed and modified. Each key is unique within the key set, and can be an instance of any immutable type: boolean, integer, float, tuple, string, etc. In other programming languages, the same data structure is referred to as "associative array" or "hash tables" or "hash maps".
Key Discussion
The keys 1
and True
are equivalent. Why?
Create a Dictionary
A new dictionary instance is declared using the {...}
syntax. The curly braces are placed around comma-separated key: value
pairs. The dictionary can be empty
d = {}
or it can be populated with values:
d = {'a': 'b', 1: 2}
It is good form to insert a space after :
. A comma is tolerated after the last pair.
Access a Dictionary
Access Individual Elements
Individual dictionary elements can be accessed with the []
syntax or with the get()
function.
Access with [] Syntax
The []
syntax can only be used with keys that exist in the dictionary:
d = {'a': 'b'}
print(d['a'])
An attempt to access an inexistent key will throw a KeyError
exception. To avoid the exception, use get()
instead, or test the existence of the key first.
get() Function
d = {'a': 'b'}
print(d.get('a')) # will display 'a'
print(d.get('no-such-key')) # will display None
Test the Existence of a Key
The existence of the key can be tested with in
:
if 'some-key' in d:
print("key exists")
get()
can also be used:
if d.get('some-key') is not None:
print("key exists")
Get All Keys
Get All Values
Modify a Dictionary
Modify Individual Elements
Modification with [] Syntax
Individual elements can be modified with the []
syntax. If the key does not exist, the key-value pair will be added to the dictionary. If the key exists, the associated value will be updated:
d = {}
d['a'] = 'b'
print(d['a']) # will display "a"
d['a'] = 'c'
print(d['a']) # will display "c"
Delete Individual Element
d = {'a': 'b', 'c': 'd'}
del d['a']
print(d) # will display {'c': 'd'}
Note that if the key being deleted does not exist, the []
syntax will throw an KeyError
exception.
Delete All Items
Use the clear()
function:
d = {...}
d.clear()