我是靠谱客的博主 稳重篮球,这篇文章主要介绍【python】动态加载文件,现在分享给大家,希望可以做个参考。

在项目中需要完成一个功能,用户在前端编辑代码,然后在用例中通用特定的方式(@{关键字方法}@)可以调用编辑的代码块
因为后台是一个服务,服务启动的时候加载生成代码文件,用户更新时前端调用后台接口可同步更新,问题的关键在于如何调用用户定义的关键字函数

方案一

__init__.py文件中懒加载

在用户生成文件的package的__init__.py 文件中,使用__all__ 变量,如:

复制代码
1
2
__all__ = ['py1','py2','py3'] // 包下有py1, py2, py3

在需要引用部分调用

复制代码
1
2
3
from xxx import * py1.callFun() //py1文件中有callFun方法

问题来了
动态生成.py文件,需要调用生成的.py文件中类和方法

import是用来加载Python模块的,其实import是调用内建函数__import__来工作的,这就使我们动态加载模块变成了可能

最后

以上就是稳重篮球最近收集整理的关于【python】动态加载文件的全部内容,更多相关【python】动态加载文件内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(80)

评论列表共有 0 条评论

立即
投稿
返回
顶部