Skip to main content

json-sempai

https://travis-ci.org/kragniz/json-sempai.png?branch=master https://pypip.in/version/json-sempai/badge.png?style=flat

Have you ever been kept awake at night, desperately feeling a burning desire to do nothing else but directly import JSON files as if they were python modules [1]? Now you can!

This abomination allows you to write

import some_json_file

and if some_json_file.json can be found, it will be available as if it is a python module.

Usage

Slap a json file somewhere on your python path. tester.json:

{
    "hello": "world",
    "this": {
        "can": {
            "be": "nested"
        }
    }
}

Now import jsonsempai and your json file!

>>> from jsonsempai import magic
>>> import tester
>>> tester
<module 'tester' from 'tester.json'>
>>> tester.hello
u'world'
>>> tester.this.can.be
u'nested'
>>>

Alternatively, a context manager may be used (100% less magic):

>>> import jsonsempai
>>> with jsonsempai.imports():
...     import tester
>>> tester
<module 'tester' from 'tester.json'>

Python packages are also supported:

$ tree
.
└── python_package
    ├── file.json
    ├── __init__.py
    └── nested_package
        ├── __init__.py
        └── second.json
>>> from jsonsempai import magic
>>> from python_package import file
>>> file
<module 'python_package.file' from 'python_package/file.json'>
>>> import python_package.nested_package.second
>>> python_package.nested_package.second
<module 'python_package.nested_package.second' from 'python_package/nested_package/second.json'>

Installing

Install from pip:

$ pip install json-sempai

or clone this repo and install from source:

$ python setup.py install

To purge this horror from your machine:

$ pip uninstall json-sempai

Metadata

Release files for json-sempai 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for json-sempai 0.4.0
File Size Uploaded
json-sempai-0.4.0.tar.gz 3.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for json-sempai 0.4.0
File Interpreter ABI Platform
json_sempai-0.4.0-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 10.1 kB

Release files / json-sempai-0.4.0.tar.gz

Download URL json-sempai-0.4.0.tar.gz
Size 3.9 kB
Tags Source
SHA-256 checksum
How to use checksums
33330ccf29646be5f533b692ab8c2a7790209c3e51a2b4778e8c382485774250
BLAKE2b-256 checksum
How to use checksums
cea3f3c3472e52e841f3dd9381704af5c9e737d8df1b17cda82e181f901d0462
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / json_sempai-0.4.0-py2.py3-none-any.whl

Download URL json_sempai-0.4.0-py2.py3-none-any.whl
Size 6.2 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
37af2e80fc9bc910fe8ea1c5b3a9b4e712fccbb696c1bd8186cb8b2314cfaf97
BLAKE2b-256 checksum
How to use checksums
ca22745a03a600c4d5339d100f48aa98b24432ef20807427ce4877a16ae6b4fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.1

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page