A navigable dictionary with dot notation access and automatic file loading
Project description
NavigableDict (aka. navdict)
A Python dictionary that supports both traditional key access (dict["key"])
and convenient dot notation (dict.key) for navigating nested data
structures, plus some extras.
Features
- Dot Notation Access: Access nested dictionaries with
data.user.nameinstead ofdata["user"]["name"] - Backward Compatible: Works exactly like a regular dictionary for all standard operations
- Nested Structure Support: Automatically converts nested dictionaries to navdict objects
- Safe Attribute Access: Handles keys that conflict with dictionary methods gracefully
- Type Hints: Full typing support for better IDE integration
- Lightweight: Minimal overhead over standard dictionaries
and
- Automatic File Loading: Seamlessly load and parse data files (CSV, YAML, JSON, etc.) when accessing dictionary keys, eliminating manual file handling
- Dynamic Class Instantiation: Automatically import and instantiate classes with configurable parameters, enabling flexible object creation from configuration data
Installation
Always install packages into a virtual environment which you can create with
python3 -m venv .venv
or when you are already using uv:
uv venv --python 3.12
Then install the package in that environment:
source .venv/bin/activate
pip install navdict
or with uv, simply run the following, since uv will automatically use
the environment.
uv pip install navdict
Installation in a project
When you want to use navdict in a project you are developing, add the
dependency to your pyproject.toml manually, or using uv
uv add navdict
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters