Skip to main content

Access nested dicts and lists using JSON-like path notation.

Project description

Access nested dicts and lists using JSON-like path notation.

Note that this code is written for python 3.

The notation is as follows:

You can just write the names of components in your path like you would in javascript:

foo.bar.baz

To access arrays or names with spaces in them, use the ‘[]’ notation. You can use negative indices with arrays to count from the end.

[“foo”][“bar”][“baz”] array[-1].attr [3]

You can use the wildcard character ‘*’ to iterate over all elements:

foo.*.baz [“foo”][*][“baz”]

This may return more or less than a single element. Use get to get the first one, and get_all to get a list of all possibilities. If you want to skip any number of elements in path, use two dots ‘..’:

foo..baz

You can slice the arrays just like in python:

array[1:-1:2]

Finally, you can filter the elements:

foo(bar.baz=true) foo.bar(baz>0).baz foo(bar=”yawn”).bar

At the moment only =, >, <, >=, <= and != operators are available, and you can only use them with strings, integers and boolean values.

This code was written in STX Next.

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

jpath-1.6.tar.gz (4.4 kB view details)

Uploaded Source

File details

Details for the file jpath-1.6.tar.gz.

File metadata

  • Download URL: jpath-1.6.tar.gz
  • Upload date:
  • Size: 4.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for jpath-1.6.tar.gz
Algorithm Hash digest
SHA256 c694674beda13ccb51e8e3a7821e5516838eb5c10b171714fc960e911b38694b
MD5 0cd9a8e1991cf72d736e122a101eb7da
BLAKE2b-256 1cd3d931faffbf46803ca2d5bc7e29eae6c1482522e51b3b9dfb706c58d69398

See more details on using hashes here.

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