A frozen checklist defines default statuses for known fields.
What You Need to Understand
Python adds frozendict.fromkeys(iterable, value=None), which constructs a frozen mapping with the same value for each key. It follows the shared-value behavior of dict.fromkeys().
When to Use It
A frozen checklist defines default statuses for known fields.
Step-by-Step Python Example
fields = ["name", "email", "city"]
record = frozendict.fromkeys(fields, "missing")
print(record["email"])
print(list(record.keys()))
How the Example Works
Each field points to the same immutable string value. The mapping does not allow replacing a field in place.
A Second Example
Compare this smaller variation with the main example, then experiment with your own values.
flags = frozendict.fromkeys(["a", "b", "c"], False)
print(flags.get("b"))
Important Behavior and Edge Cases
Using a mutable default such as [] shares one inner object among all keys, despite the frozen outer dictionary.
This example uses a Python feature. It must be run with Python or newer; earlier interpreters may reject the syntax or lack the built-in type.
Try It Yourself
Create a frozen mapping of three feature names mapped to False.
Common Beginner Mistakes
- Using a mutable default such as
[]shares one inner object among all keys, despite the frozen outer dictionary. - Using the wrong collection method for this operation without checking whether it mutates the object, returns a result, or raises on missing data.
Key Takeaways
- Python adds
frozendict.fromkeys(iterable, value=None), which constructs a frozen mapping with the same value for each key. - Each field points to the same immutable string value.
- Using a mutable default such as
[]shares one inner object among all keys, despite the frozen outer dictionary.