Skip to main content

Transform JSON Objects to human readable strings

Project description

Build Status

Human JSON

human_json is a simple python library, that can take a JSON Object, and create a pretty string for that object.

JSON is easy to transport, and quite easy to read, but requires some form of prior training to properly understand it. This library allows one to transform JSON Objects into an easier to read format

Example

The following Python dictionary (which can represent a JSON Object):

{
    'className': 'ComputerScience',
    'classId': 2020,
    'assignments': {
        'assignment1': {
            'average_grade': 5.5,
            'description': 'Complete Assignment 1',
            'grades': [5, 5, 5, 7]
        },
        'assignment2': {
            'average_grade': None,
            'description': 'Complete Assignment 2',
            'grades': ()
        }
    },
    'students': ('student1', 'student2', 'studentabc', 2019, None, 10.5),
}

turns into the following pretty string:

className: ComputerScience
classId: 2020
assignments:
	assignment1:
		average_grade: 5.5
		description: Complete Assignment 1
		grades:
			5
			5
			5
			7
	assignment2:
		average_grade: None
		description: Complete Assignment 2
		grades:
students:
	student1
	student2
	studentabc
	2019
	None
	10.5

Custom Prefixes

You can also specify an optional prefix, that will be prefixed to each line. A possible prefix is "* ". Using this prefix, will return a markdown list. This can be directly copy-pasted into a markdown file, for example:

  • className: ComputerScience
  • classId: 2020
  • assignments:
    • assignment1:
      • average_grade: 5.5
      • description: Complete Assignment 1
      • grades:
        • 5
        • 5
        • 5
        • 7
    • assignment2:
      • average_grade: None
      • description: Complete Assignment 2
      • grades:
  • students:
    • student1
    • student2
    • studentabc
    • 2019
    • None
    • 10.5

Custom Indentations

You can also specify a custom indentation. The default is \t, but you can specify or even a number of spaces. Below is an example using 2:

className: ComputerScience
classId: 2020
assignments:
  assignment1:
    average_grade: 5.5
    description: Complete Assignment 1
    grades:
      5
      5
      5
      7
  assignment2:
    average_grade: None
    description: Complete Assignment 2
    grades:
students:
  student1
  student2
  studentabc
  2019
  None
  10.5

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

human-json-0.2.0.tar.gz (3.8 kB view hashes)

Uploaded Source

Built Distribution

human_json-0.2.0-py3-none-any.whl (3.8 kB view hashes)

Uploaded Python 3

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