Skip to main content

JSON Helpers

Project description

CircleCI Coverage


jsonio

The jsonio package provides utility functions for reading and writing JSON data. It supports the following features:


Installation

pip install jsonio

Easy Read/Write

Read

import jsonio

data = jsonio.read('/foo/bar.json')

Write

import jsonio

jsonio.write({'foo': 'bar'}, '/foo/bar.json')

Works Just Like The json Library

Load

import jsonio

with open('/foo/bar.json', 'r') as jsonfile:
    data = jsonio.load(jsonfile)

Loads

import jsonio

data = jsonio.loads('{"foo": "bar"}')

Dump

import jsonio

with open('/foo/bar.json', 'w') as jsonfile:
    jsonio.dump({'foo': 'bar'}, jsonfile)

Dumps

import jsonio

data = {
    'apple': 'crumble',
    'banana': 'split',
}

# Use standard options.
text = jsonio.dumps(data, jsonfile, indent=2, sort_keys=True)

Supports date/datetime Objects

import datetime
import jsonio

before = {
    'date': datetime.date.today(),
    'timestamp': datetime.datetime.now(),
}

data = jsonio.dumps(before)
after = jsonio.loads(data)
assert before == after  # True

Supports dataclasses (Python 3.7+)

from dataclasses import dataclass
import jsonio


@dataclass
class Fruit:
    apple: str
    banana: str


before = Fruit(apple='Fuji', banana='Lady Finger')

data = jsonio.dumps(before)
after = jsonio.loads(data)
assert before == after  # True

Preserve Ordering - i.e. OrderedDict Objects

import collections
import jsonio

before = collections.OrderedDict([('banana', 'split'), ('apple', 'crumble')])

text = jsonio.dumps(before, indent=2)
after = jsonio.loads(text, ordered=True)
assert before == after  # True

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

jsonio-0.1.4.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

jsonio-0.1.4-py2.py3-none-any.whl (6.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file jsonio-0.1.4.tar.gz.

File metadata

  • Download URL: jsonio-0.1.4.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15

File hashes

Hashes for jsonio-0.1.4.tar.gz
Algorithm Hash digest
SHA256 b3aaacb6162089af963db526a3cf2bb3905fb155aa06fbc2d3c7ce171fee8b71
MD5 5abe76f2ea6a057259c7162a375e4604
BLAKE2b-256 ba211003b5167f802c79a1834998f9591a1fcfe9bc751a934613053aaf1cb0d6

See more details on using hashes here.

File details

Details for the file jsonio-0.1.4-py2.py3-none-any.whl.

File metadata

  • Download URL: jsonio-0.1.4-py2.py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15

File hashes

Hashes for jsonio-0.1.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6b5d1611243a795f8de4ddda746f52cf09758d53c64b4e55a3a8ab1c8e40de08
MD5 26006d6b92669d47db66dd981ced2abe
BLAKE2b-256 a85cbf3ca5706d4e7e7c86c2031fc771eba093c273f936ea9f6ee545e0f8ad5f

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