A fork of the original frozendict, an immutable wrapper around dictionaries. This library is a pure Python, MIT-licensed alternative to the new LGPL-3.0 licensed frozendict.
It implements the complete mapping interface and can be used as a drop-in replacement for dictionaries where immutability is desired. The immutabledict constructor mimics dict, and all of the expected interfaces (iter, len, repr, hash, getitem) are provided. Note that an immutabledict does not guarantee the immutability of its values, so the utility of hash method is restricted by usage.
Official release in on pypi as immutabledict.
Community-maintained releases are available:
- On conda-forge as
immutabledict - On various package repositories
from immutabledict import immutabledict
my_item = immutabledict({"a": "value", "b": "other_value"})
print(my_item["a"]) # Print "value"- Dropped support of EOL Python versions (older versions of the library may support older Python versions)
- Fixed
collections.Mappingdeprecation warning - Typing
- PEP 584 union operators
- Keep the same signature for
copy()asdict(starting with immutabledict 3.0.0), don't accept extra keyword arguments.
If you wish to support the project, donations are possible on the following platforms: