Skip to main content

Immutable wrapper around dictionaries (a fork of frozendict)

Project description

immutabledict

PyPI Conda PyPI - Python Version

License Build Codecov PyPI - Downloads

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.

Installation

Official release in on pypy as immutabledict.

Community-maintained releases are available:

Example

from immutabledict import immutabledict

my_item = immutabledict({"a": "value", "b": "other_value"})
print(my_item["a"]) # Print "value"

Differences with the old original frozendict package

  • Dropped support of EOL Python versions (older versions of the library may support older Python versions)
  • Fixed collections.Mapping deprecation warning
  • Typing
  • PEP 584 union operators
  • Keep the same signature for copy() as dict (starting with immutabledict 3.0.0), don't accept extra keyword arguments.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

immutabledict-3.0.0.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

immutabledict-3.0.0-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

Details for the file immutabledict-3.0.0.tar.gz.

File metadata

  • Download URL: immutabledict-3.0.0.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for immutabledict-3.0.0.tar.gz
Algorithm Hash digest
SHA256 5a23cd369a6187f76a8c29d7d687980b092538eb9800e58964603f1b973c56fe
MD5 cca29974992f8ea34ae558f3950d8811
BLAKE2b-256 2126792a4d9fc86a8bc4563b803021f724ab6489d54c2f9d369ad2256bc7dbba

See more details on using hashes here.

File details

Details for the file immutabledict-3.0.0-py3-none-any.whl.

File metadata

  • Download URL: immutabledict-3.0.0-py3-none-any.whl
  • Upload date:
  • Size: 4.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for immutabledict-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 034bacc6c6872707c4ec0ea9515de6bbe0dcf0fcabd97ae19fd4e4c338f05798
MD5 2ed032c65dbf295bbc0be3f9e425838e
BLAKE2b-256 dfefe038d0d7cd1954c46402a0c27794dd93982c40632085046efb6ab8aa6c1d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page