It's like dict, but better
Project description
SuperDict - it’s like dict, but better.
You don’t change you dictionary to something new, you just make it better.
Module contains only 15 lines of code and valid by PEP8.
Installation
$ pip install superdict
Usage
>>> from superdict import SuperDict >>> >>> data = SuperDict() >>> >>> data.so.how.it = 'works' >>> data {'so': {'how': {'it': 'works'}}} >>> data.so {'how': {'it': 'works'}} >>> >>> data.test.me.please = 42 >>> data {'test': {'me': {'please': 42}}, 'so': {'how': {'it': 'works'}}} >>> >>> del data.test.me >>> data {'test': {}, 'so': {'how': {'it': 'works'}}} >>> >>> data['so']['how'] {'it': 'works'} >>> >>> default_data = SuperDict({'default': {'x': 'y'}}) >>> default_data {'default': {'x': 'y'}} >>> default_data.default.x 'y' >>> >>> default_data = SuperDict({'default': SuperDict({'x': 'y'})}) >>> default_data {'default': {'x': 'y'}} >>> default_data.default.x 'y' >>> >>> real_dict = SuperDict({'is_success': True}) >>> copied_dict = real_dict.copy() >>> copied_dict.is_success True
In another cases this class works like a dict.
>>> default_data['unknown-key'] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'unknown-key' >>> >>> default_data['set'] = 'correct' >>> default_data['new-set']['value'] = 'wrong' Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'new-set'
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
SuperDict-1.0.3.tar.gz
(747 Bytes
view details)
File details
Details for the file SuperDict-1.0.3.tar.gz
.
File metadata
- Download URL: SuperDict-1.0.3.tar.gz
- Upload date:
- Size: 747 Bytes
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7074216be7c9c99b33e502772436b4c17d5e5efceb7620b3e8b4b30634495ebc |
|
MD5 | df270d501d412e56887dbc5778dafe39 |
|
BLAKE2b-256 | 943ce59a9d3d4022f208fb6b2a2a2ab6a54b0f06165955e116d737bc481be684 |