gpt4 book ai didi

python - 使用 importlib 提升 python 子包

转载 作者:太空宇宙 更新时间:2023-11-03 15:11:45 25 4
gpt4 key购买 nike

我有一个带有子包的包。导入包时,我想动态地使子包之一可用作固定名称。我该怎么做?

/package
__init__.py
/subpackage1
__init__.py
/subpackage2
__init__.py

从外部我希望能够执行from package import subpackage,并且包中的__init__.py使正确的子包(1或2)可用作为 package.subpackage 取决于环境变量。

编辑:我特别想使用 importlib.import_module() 来执行此操作,因为我需要组合一个字符串来提供子包的路径。

最佳答案

您只需将 package/__init__.py 中正确的子包导入为 subpackage 即可。

import importlib
import os

if os.environ.get('MY_ENV_VAR', None): # Check your env condition here
pkg = '.subpackage1'
else:
pkg = '.subpackage2'
subpackage = importlib.import_module(pkg, __name__)

关于python - 使用 importlib 提升 python 子包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44163408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com