python 使用__init__.py 自动导入
·
1、自动导入模块
import os
import importlib
# 获取当前包的路径
package_path = os.path.dirname(__file__)
# 遍历当前目录下的所有 .py 文件(不包括 __init__.py 本身)
for module in os.listdir(package_path):
if module.endswith(".py") and module != "__init__.py":
module_name = module[:-3] # 去掉 .py 后缀
importlib.import_module(f"{__name__}.{module_name}") # 动态导入模块
2、手动控制对外暴漏的模块
import os
import importlib
package_path = os.path.dirname(__file__)
__all__ = []
for module in os.listdir(package_path):
if module.endswith(".py") and module != "__init__.py":
module_name = module[:-3]
__all__.append(module_name) # 只暴露在 __all__ 里的模块
importlib.import_module(f"{__name__}.{module_name}")
更多推荐



所有评论(0)