我有一个名为detector.py
的模块,只有当detector.py
被experiment.py
导入时,我才想将模块Vimba
导入其中。这种特定于导入器的条件导入是否可行?
如果我将这个模块(detector.py
)导入到另一个模块中,比如test.py
,我不想尝试导入Vimba
。
我试着检查__name__
,看看它是否告诉我我的进口商是谁,但我只得到这个模块project.detection.detector
的一般模块路径。
您可以使用sys.modules
检查模块是否已导入。
import sys
if 'experiment' in sys.modules:
import Vimba