This helper provides simplified loading of modules (files) from package (dir)
Project description
import autoload
What is autoloading?
Autoloading means the automatic loading of the files required for your module. That is including the files required for your application without explicitly including each file with from modulename import filename construct.
1. problem
- let directory struct be like
main.py
project_dir/
|-- example.py
|-- README.md
|-- setup.py
|-- test_package
| |-- __init__.py
| |-- package_file_0.py
| |-- package_file_1.py
| |-- package_file_2.py
- and code
"""example.py"""
from test_package import package_file_0
from test_package import package_file_1
...
from test_package import package_file_n
but we are too lazy to type a lot letters
2. solution
- install
pip install -UIv "import-autoload>=0.2.4a"
- add two lines to
__init__.py
"""__init__.py"""
from autoload import autoload
__all__ = autoload()
"""example.py"""
from test_package import *
- or variant
"""main.py"""
from autoload import autoload
autoload("project_dir.test_package", pattern="package_file_[0123]")
parameters
module_namepath to module dir with dot separator, like infrom module_name import, default current modulepatternlike infnmatch(filename, pattern), default*.py
attention
- it seems to require python version >= 3.4. if you were able to test an early version, please contact me
how it work
- checks path to module and call
importlib.import_module()
License
- It's opensource and free software, see the LICENSE for more details
similar projects
- import-export
- another autoloader
TODO
- handle system path separator for module_name
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 Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file import_autoload-0.3.1-py3-none-any.whl.
File metadata
- Download URL: import_autoload-0.3.1-py3-none-any.whl
- Upload date:
- Size: 5.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34bcf7964612430c4b2403ea2b4f4ed5033cac3d19edf64c021d6c3adc60ab83
|
|
| MD5 |
83a0cfcc57a658d7cf88c51e2069e14f
|
|
| BLAKE2b-256 |
2701f411ceee8a0f30601faa11b2228784171f813077e10173ffb7fc34cb0c6d
|