Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fiverr/pyresolve
Resolve dot notation from dictionary
https://github.com/fiverr/pyresolve
dictionary dot-notation python resolve
Last synced: about 2 months ago
JSON representation
Resolve dot notation from dictionary
- Host: GitHub
- URL: https://github.com/fiverr/pyresolve
- Owner: fiverr
- License: mit
- Created: 2020-06-23T21:09:54.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-07-10T10:37:24.000Z (6 months ago)
- Last Synced: 2024-10-12T17:14:35.800Z (3 months ago)
- Topics: dictionary, dot-notation, python, resolve
- Language: Python
- Homepage: https://pypi.org/project/pyresolve/
- Size: 12.7 KB
- Stars: 4
- Watchers: 10
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# pyresolve [![](https://img.shields.io/pypi/v/pyresolve?style=flat-square)](https://pypi.org/project/pyresolve/) [![](https://img.shields.io/static/v1?label=github&message=pyresolve&labelColor=black&color=3572a5&style=flat-square&logo=github)](https://github.com/fiverr/pyresolve) [![](https://circleci.com/gh/fiverr/pyresolve.svg?style=svg)](https://circleci.com/gh/fiverr/pyresolve)
Resolve dot notation from dictionary
```py
from pyresolve import resolvemy_dictionary = {"out":{"middle":{"in":"Balue"}}}
# Before
my_dictionary.get('out', {}).get('middle', {}).get('in')# After
resolve(my_dictionary, "out.middle.in") # "Balue"
```Does not break for missing properties
```py
resolve(my_dictionary, "outer.missing.something") # None
```Can specify a different default value
```py
resolve(my_dictionary, "outer.missing.something", []) # []
```Supports index in list
```py
dictionary_with_list = {"users": [{"name":"Joe"}, {"name":"Jane"}]}
resolve(my_dictionary, "users.1.name") # Jane
```Supports list notation
```py
dictionary_with_list = {"users": [{"name":"Joe"}, {"name":"Jane"}]}
resolve(my_dictionary, "users[1].name") # Jane
```Install
```bash
pip install pyresolve
```