Skip to main content

Resolve paths within nested objects.

Project description

Path Resolver
=============

Resolve paths within nested objects.

# What is Path Resolver?

Path Resolver is a very simple piece of python code that allows you to dynamic resolve deeply-nested (or as shallow as you please)
structures in Python.

# Why would I use this?

Path Resolver was born out of a need to dynamically find data within nested JSON information.

For example, perhaps I want to extract a bunch of information from a dictionary deep within a JSON structure.
I could, for example, simple write a lot of code and hard-coded indexes, key lookups, et cetera.

Or, alternatively, I could use a simple DSL to look up and resolve the items I need. This is what Path Resolver is.

# Example Usage

## Simple Usage

>>> resolve(['testvalue'], 0)
['testvalue']

>>> resolve(['testvalue'], '0')
'testvalue'

>>> resolve(['testvalue'], '*')
['testvalue']

>>> resolve({'key': 'testvalue'}, 'key')
'testvalue'

>>> resolve({'key': 'testvalue'}, '*')
['testvalue']

## Advanced Usage

>>> resolve({'parent': ['one', 'two', 'three']}, 'parent.*')
['one', 'two', 'three']

>>> resolve({'parent': [{'child': 'testvalue1'}]}, 'parent.*.child')
['testvalue1']

>>> resolve({'parent': [{'child': 'testvalue1'}, {'child': 'testvalue2'}]}, 'parent.*.child')
['testvalue1', 'testvalue2']

>>> resolve({'parent': {'child1': 'testvalue1', 'child2': 'testvalue2'}}, 'parent.*')
['testvalue1', 'testvalue2']

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

pathresolver-0.1.2.tar.gz (2.4 kB view hashes)

Uploaded Source

Built Distributions

pathresolver-0.1.2.linux-x86_64.tar.gz (3.1 kB view hashes)

Uploaded Source

pathresolver-0.1.2-py2.7.egg (3.9 kB view hashes)

Uploaded Source

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