Skip to main content

Democritus functions for working with JSON.

Project description

Democritus JSON

PyPI CI Lint codecov The Democritus Project uses semver version 2.0.0 The Democritus Project uses black to format code License: LGPL v3

Democritus functions[1] for working with JSON.

[1] Democritus functions are simple, effective, modular, well-tested, and well-documented Python functions.

We use d8s (pronounced "dee-eights") as an abbreviation for democritus (you can read more about this here).

Installation

pip install d8s-json

Usage

You import the library like:

from d8s_json import *

Once imported, you can use any of the functions listed below.

Functions

  • def json_files(directory_path: str) -> List[str]:
        """Find all json files in the given directory_path."""
    
  • def json_read(json_string: str):
        """."""
    
  • def json_read_first_arg_string_decorator(func):
        """Load the first argument as JSON (if it is a string)."""
    
  • def json_write(file_path, json_content, **kwargs):
        """Write the json_content to the file_path."""
    
  • def json_prettify(json_object):
        """."""
    
  • def json_pretty_print(json_string):
        """Pretty print the json so it is readable."""
    
  • def json_search(json_data, value_to_find):
        """Find the value_to_find in the json_data."""
    
  • def json_structure(json_data):
        """Print out the structure of the given json blob."""
    
  • def json_path_dot_notation_to_bracket_notation(json_path_dot_notation: str) -> str:
        """Convert the given json path from dot notation to bracket notation (foo.bar -> ["foo"]["bar"])."""
    
  • def json_path_bracket_notation_to_dot_notation(json_path_dot_notation: str) -> str:
        """Convert the given json path from bracket notation to dot notation (["foo"]["bar"] -> foo.bar)."""
    

Development

👋  If you want to get involved in this project, we have some short, helpful guides below:

If you have any questions or there is anything we did not cover, please raise an issue and we'll be happy to help.

Credits

This package was created with Cookiecutter and Floyd Hightower's Python project template.

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

d8s_json-0.3.0.tar.gz (26.5 kB view details)

Uploaded Source

Built Distribution

d8s_json-0.3.0-py2.py3-none-any.whl (22.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file d8s_json-0.3.0.tar.gz.

File metadata

  • Download URL: d8s_json-0.3.0.tar.gz
  • Upload date:
  • Size: 26.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for d8s_json-0.3.0.tar.gz
Algorithm Hash digest
SHA256 d27ef5efdc3e081894d6c83560882b5e1d1e1eb932766287bf0cd98e273178ea
MD5 cfb495b2a0a025e81ba68d933a7c3bb2
BLAKE2b-256 ec955d0ab1d228419d792cc52be5d66b6add88ed6e09d4c34c51b4dbe9a283ec

See more details on using hashes here.

File details

Details for the file d8s_json-0.3.0-py2.py3-none-any.whl.

File metadata

  • Download URL: d8s_json-0.3.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 22.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for d8s_json-0.3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 aa31f14a148f564db2cac344c527de2dc57fe0f49a1e1b8edd9a50fcef9fa8b5
MD5 92d8f24a61286d2c7b77492dd602e27c
BLAKE2b-256 c0965be3e35f65c988261b9592c221842362277415ed8974e4e5b4fbced4a0ea

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