معرفی شرکت ها


dotdict-bench-0.0.0


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Benchmarking for dot-accessible dict packages in python
ویژگی مقدار
سیستم عامل -
نام فایل dotdict-bench-0.0.0
نام dotdict-bench
نسخه کتابخانه 0.0.0
نگهدارنده []
ایمیل نگهدارنده []
نویسنده pwwang
ایمیل نویسنده pwwang@pwwang.com
آدرس صفحه اصلی -
آدرس اینترنتی https://pypi.org/project/dotdict-bench/
مجوز MIT
# dotdict-bench Benchmarking for dot-accessible dict packages in python [![deps](https://img.shields.io/librariesio/release/pypi/dotdict-bench?style=flat-square)](https://libraries.io/github/pwwang/dotdict-bench#repository_dependencies) More test ideas? [Submit an issue](https://github.com/pwwang/dotdict-bench/issues)! ## Package Information As of 2022-09-21 23:11:19.354375 |Package|Version|Last Commit|Stars|Forks|Description| |-------|-------|-----------|-----|-----|-----------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|2.4.0|Tue, 05 Jan 2021 07:16:38 GMT|2277|137|[(i)](# "The Python Dict that's better than heroin.")| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|6.0.2|Sat, 02 Apr 2022 02:24:21 GMT|2062|89|[(i)](# "Python dictionaries with advanced dot notation access")| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|1.3.30|Wed, 06 Apr 2022 16:26:33 GMT|366|43|[(i)](# "Dot access dictionary with dynamic hierarchy creation and ordered iteration")| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|0.4.0|Wed, 21 Sep 2022 22:23:19 GMT|20|1|[(i)](# "A blazing fast dict subclass that supports dot access notation.")| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|1.9|Sun, 28 Feb 2021 10:26:53 GMT|207|39|[(i)](# "Access dict values as attributes (works recursively)")| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|0.0.3|Sun, 22 Nov 2020 16:48:22 GMT|18|1|[(i)](# "Dot-accessible, update-aware Python dicts (& lists). Works recursively, like a charm.")| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|1.1.5|Thu, 15 Aug 2019 23:10:47 GMT|14|3|[(i)](# "python: a lightweight add-on for dictionaries, featuring deep dictionary union, dictionary keys as object attributes (in code dict.key.sub.value notation) as well as a separate string dig/dug for using strings with dot notation on native dictionaries")| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|0.1.6|Thu, 12 May 2022 20:37:59 GMT|7|2|[(i)](# "Python dictionary with dot notation")| ## Creating an object of the dict subclass How the packages create an object of the dict subclass | |Created| |-|-----------------------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|`{'a': {'b': {'c': 1}}}` **Type**: `Dict`| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|`{'a': {'b': {'c': 1}}}` **Type**: `Box`| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|`DotMap(a=DotMap(b=DotMap(c=1)))` **Type**: `DotMap`| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|`✫(a=✫(b=✫(c=1)))` **Type**: `DotWiz`| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|`{'a': {'b': {'c': 1}}}` **Type**: `EasyDict`| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|`{'a': {'b': {'c': 1}}}` **Type**: `DotsiDict`| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|`{'a': {'b': {'c': 1}}}` **Type**: `Dict`| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|`{'a': Diot({'b': Diot({'c': 1})})}` **Type**: `Diot`| ## Creating a dict with preserved keys How the packages create a dict with preserved keys (e.g. `keys`, `values`, `items`, etc) Literally, `{"keys": 1}` | |Created or error| |-|-----------------------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|{'keys': 1}| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|{'keys': 1}| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|DotMap(keys=1)| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|✫(keys=1)| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|{'keys': 1}| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|{'keys': 1}| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|Key 'keys' conflicts with reserved word| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|{'keys': 1}| ## Creating a dict with magic keys How the packages create a dict with magic keys (e.g. `__name__`, `__class__`, etc) Literally, `{"__name__": 1}` | |Created or error| |-|-----------------------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|`{'__name__': 1}`| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|`{'__name__': 1}`| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|`DotMap(__name__=1)`| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|`✫(__name__=1)`| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|`{'__name__': 1}`| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|`{'__name__': 1}`| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|`{'__name__': 1}`| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|`{'__name__': 1}`| ## Accessing values How the packages to access values Literally `1` from `{"a": {"b": {"c": 1}}}` | |Way to access value| |-|-----------------------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|`<dict>.a.b.c` or `<dict>['a']['b']['c']`| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|`<dict>.a.b.c` or `<dict>['a']['b']['c']`| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|`<dict>.a.b.c` or `<dict>['a']['b']['c']`| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|`<dict>.a.b.c` or `<dict>['a']['b']['c']`| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|`<dict>.a.b.c` or `<dict>['a']['b']['c']`| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|`<dict>.a.b.c` or `<dict>['a']['b']['c']`| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|`dictlib.dig(<dict>, 'a.b.c')` or `dictlib.Dict(<dict>).a.b.c`| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|`<dict>.a.b.c` or `<dict>['a']['b']['c']`| ## Recursive Dot Access Whether recursive dot access is supported when there are lists in the dict Literally `<dict>.a.b[0].c` from `{"a": {"b": [{"c": 1}, {"d": 2}]}}` | |Value or error| |-|-----------------------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|`1`| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|`1`| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|`1`| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|`1`| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|`1`| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|`1`| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|AttributeError: 'dict' object has no attribute 'c'| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|`1`| ## Automatic Hierarchy Whether a hierarchical structure is created by dot notation Literally `<dict>.a.b.c = 1` creates `{"a": {"b": {"c": 1}}}` | |Created or error| |-|-----------------------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|`{'a': {'b': {'c': 1}}}`| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|KeyError: "'Box' object has no attribute 'a'"| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|`DotMap(a=DotMap(b=DotMap(c=1)))`| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|AttributeError: 'DotWiz' object has no attribute 'a'| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|AttributeError: 'EasyDict' object has no attribute 'a'| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|KeyError: 'a'| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|KeyError: 'a'| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|AttributeError: a| ## Accessing values with preserved keys How to access values with conflict keys Literally, accessing values from `{"keys": 1, "__name__": 2}` |Package|`obj.keys`|`obj['keys']`|`obj.__name__`|`obj['__name__']`| |---|---|---|---|---| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|`<built-in method keys of Dict object at 0x7f4455a49c70>`|`1`|`2`|`2`| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|`<bound method Box.keys of Box({'keys': 1, '__name__': 2})>`|`1`|`2`|`2`| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|`<bound method DotMap.keys of DotMap(keys=1, __name__=2)>`|`1`|`AttributeError: __name__`|`2`| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|`1`|`1`|`2`|`2`| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|`1`|`1`|`2`|`2`| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|`<built-in method keys of DotsiDict object at 0x7f4455a49c70>`|`1`|`2`|`2`| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|`Can't create`|`Can't create`|`Can't create`|`Can't create`| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|`<built-in method keys of Diot object at 0x7f4455a49c70>`|`1`|`2`|`2`| ## Accessing dashed keys How the values with keys with dash are accessed Literally `<dict>.a_b` for `{"a-b": 1}` |Package|`obj.a_b`|`obj['a_b']`|`obj['a-b']`| |---|---|---|---| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|`{}`|`{}`|`1`| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|`1`|`KeyError: "'a_b'"`|`1`| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|`DotMap()`|`DotMap()`|`1`| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|`AttributeError: 'DotWiz' object has no attribute 'a_b'`|`KeyError: 'a_b'`|`1`| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|`AttributeError: 'EasyDict' object has no attribute 'a_b'`|`KeyError: 'a_b'`|`1`| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|`KeyError: 'a_b'`|`KeyError: 'a_b'`|`1`| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|`1`|`1`|`1`| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|`1`|`1`|`1`| ## Frozen Dict Support Whether the packages support frozen dicts | |Support? and how?| |-|-----------------------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|`<dict>.freeze()/.unfreeze()`| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|`Box(<dict>, frozen_box=True)`| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|Not supported| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|Not supported| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|Not supported| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|Not supported| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|Not supported| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|`FrozenDiot(<dict>)` or `Diot(<dict>, diot_frozen=True)`| ## Key transformation support Whether the packages support key transformation for dot access For example: making `<dict>.a_b` to access value from `{"a.b": 1}` | |Support? and how?| |-|-----------------------| |<a target="_blank" href="https://github.com/mewwts/addict">addict</a>|Not supported| |<a target="_blank" href="https://github.com/cdgriffith/Box">python-box</a>|Using Conversion Box or Camel Killer Box| |<a target="_blank" href="https://github.com/drgrib/dotmap">dotmap</a>|Not supported| |<a target="_blank" href="https://github.com/rnag/dotwiz">dotwiz</a>|`DotWizPlus` turns special-cased keys, such as names with spaces, into valid snake_case words| |<a target="_blank" href="https://github.com/makinacorpus/easydict">easydict</a>|Not supported| |<a target="_blank" href="https://github.com/polydojo/dotsi">dotsi</a>|Not supported| |<a target="_blank" href="https://github.com/srevenant/dictlib">dictlib</a>|Not supported| |<a target="_blank" href="https://github.com/pwwang/diot">diot</a>|Support custom transform function: `Diot(..., diot_transform =...)`|


نیازمندی

مقدار نام
>=0.0.1,<0.0.2 benchwork
>=2.4.0,<3.0.0 addict
>=6.0.2,<7.0.0 python-box
>=1.3.30,<2.0.0 dotmap
>=0.4.0,<0.5.0 dotwiz
>=0.0.3,<0.0.4 dotsi
>=1.1.5,<2.0.0 dictlib
>=0.1.6,<0.2.0 diot
>=4.12.0,<5.0.0 importlib-metadata
>=1.55,<2.0 PyGithub
>=0.5.3,<0.6.0 pyparam
>=1.9,<2.0 easydict


زبان مورد نیاز

مقدار نام
>=3.9,<4.0 Python


نحوه نصب


نصب پکیج whl dotdict-bench-0.0.0:

    pip install dotdict-bench-0.0.0.whl


نصب پکیج tar.gz dotdict-bench-0.0.0:

    pip install dotdict-bench-0.0.0.tar.gz