Skip to main content

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


Download files

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

Files for SuperDict, version 1.0.3
Filename, size File type Python version Upload date Hashes
Filename, size SuperDict-1.0.3.tar.gz (747 Bytes) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page