Python ยท Chapter 18 of 45

Python Dictionaries

A dictionary maps KEYS to VALUES. Create with `{}` or `dict()`. Keys must be immutable (strings, numbers, tuples).

Dicts are ordered by insertion since Python 3.7.

Access and update

`d[key]` gets a value (or KeyError). `d.get(key, default)` returns default when missing. `d[key] = value` sets or updates.

Iteration

Iterate with `d.keys()`, `d.values()`, or `d.items()` for key/value pairs.

Example 1 (python)
user = {"name": "Sam", "age": 25}
print(user["name"])
user["email"] = "sam@example.com"
print(user)
Output
Sam
{'name': 'Sam', 'age': 25, 'email': 'sam@example.com'}

Access, then add a new key.

Example 2 (python)
scores = {"Ana": 90, "Ben": 78}
for name, score in scores.items():
    print(name, "->", score)
Output
Ana -> 90
Ben -> 78

items() yields (key, value) pairs.

Key points

  • Key -> value mapping.
  • Keys must be immutable.
  • Fast lookup by key.
  • Iterate with `.items()`, `.keys()`, `.values()`.
๐Ÿ’ก Note: Use `.get(key, default)` to avoid KeyError when a key might be missing.

๐Ÿ“ Quick Quiz

1. Which is a valid dict key?

2. What does `d.get('x', 0)` do?

3. Which yields (key, value) pairs?