Use JSON files as if they're python modules
Project description
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
[1] | Disclaimer: Only do this if you hate yourself and the rest of the world. |
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size json_sempai-0.4.0-py2.py3-none-any.whl (6.2 kB) | File type Wheel | Python version 2.7 | Upload date | Hashes View |
Filename, size json-sempai-0.4.0.tar.gz (3.9 kB) | File type Source | Python version None | Upload date | Hashes View |
Hashes for json_sempai-0.4.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 37af2e80fc9bc910fe8ea1c5b3a9b4e712fccbb696c1bd8186cb8b2314cfaf97 |
|
MD5 | 3fbec91a96372dd5027f1f87ab2dca80 |
|
BLAKE2-256 | ca22745a03a600c4d5339d100f48aa98b24432ef20807427ce4877a16ae6b4fc |