Skip to main content

`gqylpy-dict` is based on the built-in `dict` and serves as an enhancement to it. It can do everything the built-in `dict` can do, and even more.

Project description

LOGO Release Python Versions License Downloads

gqylpy-dict

English | 中文

gqylpy-dict is based on the built-in dict and serves as an enhancement to it. It can do everything the built-in dict can do, and even more. (Designed specifically for the neurologically diverse)

pip3 install gqylpy_dict

>>> from gqylpy_dict import gdict

>>> gdict == dict
True

>>> gdict is dict
False

>>> x = {'a': [{'b': 'B'}]}
>>> x = gdict(x)
>>> x.a[0].b
'B'

>>> x.deepget('a[0].b')
'B'

Let's delve deeper into the functionalities and usages of the gdict class.

Firstly, the gdict class is a custom dictionary class that inherits from Python's built-in dict class. A special feature of gdict is its support for accessing and modifying key-value pairs in the dictionary using dot notation (.). This means we can access dictionary values as if they were object attributes. For instance, given a dictionary {'name': 'Tom', 'age': 25}, we can define a gdict object as follows:

my_dict = gdict({'name': 'Tom', 'age': 25})

Using dot notation, we can access the dictionary values:

my_dict.name  # 'Tom'
my_dict.age  # 25

We can even modify the dictionary values:

my_dict.name = 'Jerry'

At this point, the value associated with the 'name' key in the dictionary has been changed to 'Jerry'.

Additionally, gdict supports multi-level nested data structures, meaning the keys and values stored in a gdict object can also be dictionaries. For example:

my_dict = gdict({
    'personal_info': {'name': 'Tom', 'age': 25},
    'work_info': {'company': 'ABC Inc.', 'position': 'Engineer'}
})

We can access and modify values in nested dictionaries:

my_dict.personal_info.name  # 'Tom'
my_dict.work_info.position = 'Manager'

Aside from dot notation, we can also access and modify values in a gdict object using traditional dictionary access methods:

my_dict['personal_info']['name']  # 'Tom'
my_dict['work_info']['position'] = 'Manager'

Lastly, the gdict class supports various input formats during instantiation:

my_dict = gdict({'name': 'Tom', 'age': 25})
my_dict = gdict(name='Tom', age=25)
my_dict = gdict([('name', 'Tom'), ('age', 25)])

In summary, the design and implementation of the gdict class provide a convenient and extensible data structure that allows for more flexible manipulation of Python dictionary objects.

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

gqylpy_dict-1.2.6.tar.gz (12.7 kB view hashes)

Uploaded Source

Built Distribution

gqylpy_dict-1.2.6-py3-none-any.whl (14.5 kB view hashes)

Uploaded Python 3

Supported by

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