phy*_*xic 3 python installation packages python-module
我通过解压 tar.gz 并运行 setup.py 安装了一些软件包。
我正在检查
>>> import sys
>>> '[packagename]' in sys.modules
Run Code Online (Sandbox Code Playgroud)
但它一直在说False,对于他们所有人。我错过了什么?
sys.modules 仅显示已加载到您的环境中的模块。
系统。模块
这是一个将模块名称映射到已加载模块的字典。这可以被操纵以强制重新加载模块和其他技巧。但是,替换字典不一定会按预期工作,并且从字典中删除重要项目可能会导致 Python 失败。
要获得您想要的行为,您需要先导入模块:
import sys
import packagename
'packagename' in sys.modules #True
Run Code Online (Sandbox Code Playgroud)
如果您在控制台中,并想检查您是否有可用的模块,请尝试导入它。如果它不存在,你会得到一个错误:
>>> import packagename
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'packagename'
Run Code Online (Sandbox Code Playgroud)
如果您正在编写代码并希望在使用之前以一种干净的方式检查模块是否存在,那么请求宽恕比许可更容易。
try:
import packagename
except ImportError:
#handle the error
Run Code Online (Sandbox Code Playgroud)