导入非python文件

import-x的Python项目详细描述


一个ext-tensible加载程序,可以导入类似于python模块的任何内容。

支持python3.6+

用法

路径中的示例json文件foo.json

{"why":"not",}
# Extend the ExtensionLoader and implement 'handle_module' method# where you will get a module object and the path to that module.>>>fromimport_ximportExtensionLoader>>>classJsonLoader(ExtensionLoader):extension='.json'auto_enable=False@staticmethoddefhandle_module(module,path):"""
         Load the json file and set as `data` attribute of the module.
         """json_file=Path(path)content=json_file.read_text()try:data=json.loads(content)except(json.JSONDecodeError,ValueError):data={}module.data=data>>>json_imports=JsonLoader()>>>withjson_imports:importfoo>>>foo.data>>>{"why":"not"}

如果要在没有上下文管理器的情况下自动启用导入,则只需 在加载程序中执行auto_enable = True

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android中带有复选框的java ListActivity   java在JFrame中运行与webdriver相关的代码   java Neo4j对属性存在性的约束   univocity Java将类和列表映射到泛型类型   JAVAlang.ClassNotFoundException:javax。验证。websphere上带有gradle错误的ParameterNameProvider spring启动应用程序   集成如何通过java将文件传输到ALFRESCO   java Jacksonal和JacksonApperasl的最新jar版本是什么?   java如何在IntelliJ Idea中设置鱼眼/坩埚评论?   java如何强制定义构造函数   java HTTP状态404?   java试图使用堆栈查看预期输出   java如何将对象[]转换为特定类型数组   java在这种情况下编译器中实际发生了什么   java Android DexClassLoader错误,“优化数据目录..”。。不属于当前用户的