Like Node.js's require(), but with more supported formats
Project description
node-require
Like Node.js's require(), but with more supported file formats
Features
- Importing modules from higher folders
- Loading JSON, Toml, YAMl and BSON files
Installing
Install base module:
# Linux / MacOS
python3 -m pip install -U require
# Windows
py -3 -m pip install -U require
Optional Dependencies
orjson
: Faster JSON decoding |ujson
: Alternarive fororjson
| linktoml
: Support for Tomlyaml
: Support for YAMLbson
: Support for BSON
Quick notes
This lib does not support importing builtin modules or site-packages (modules installed with pip).
Consider using usual import
, or if you need a dynamic import, use Python's builtin importlib.import_module
Usage
Yeah, that's bad example, but i'm can't come up with a best one..
Example directory structure:
src/
tests/
test.py
config.json
regex.py
main.py
src/main.py
:
import os
import importlib
for file in os.listdir('./tests'):
if file.endswith('.py'):
importlib.import_module(f'tests.{file[:-3]}').run()
src/regex.py
:
import re
PWD = re.compile("[a-zA-Z0-9_\.]{12,16}")
src/config.json
:
{
"user": {
"name": "Jonh",
"password": "Fluffy_Gim19"
}
}
src/tests/test.py
:
from require import require
password_pattern = require('../regex.py').PWD
password = require('../config.json')['user']['password']
def run():
assert password_pattern.match(password) != None
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
node-require-1.2.1.tar.gz
(3.8 kB
view hashes)
Built Distribution
Close
Hashes for node_require-1.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | da356d91e8653f5b5be3b058dbec64a4b0af592ba518591560e7ac149d5c43ef |
|
MD5 | 9fe1d4441b1e9a70542410220fca49ef |
|
BLAKE2b-256 | 39a2bba17fc88bca5d589e8ac548b1a1859c271bb05396cb3d7be2015fcb10d9 |