这个问题我已经有几个月了。每当我想获取一个新的python软件包并使用它时,我都会在终端中收到此错误:
ImportError: No module named site
我不知道为什么会出现此错误。实际上,我不能使用任何新软件包,因为每次我要安装一个软件包时,都会收到此错误。我搜索了一下,发现问题可能出在PYTHONPATH和PYTHONHOME上,但我不知道它们是什么以及如何更改它们。 我的操作系统是mac os,我不知道如何在mac中解决此问题。
每次打开终端时,我都会使用以下两个命令来解决问题:
unset PYTHONHOME
unset PYTHONPATH
但是下次我再次收到错误消息。
答案 0 :(得分:0)
Python工具在Mac OS X中不断发展,因此不推荐使用Python 2.7。升级到Mac OS X Catalina(10.15.x)后,据我了解,系统默认路径可能不再适用。这里有一些方案:
mkdir -p ~/.local/lib/python2.7/site-packages
届时,您将拥有一个专用于Python模块的目录(Python才能运行)。 (请注意,错误ImportError: No module named site
具有误导性,因为它实际上表明不存在正确的目录结构,无法正确加载site
模块。)PYTHONHOME
指向Python3,而您的python --version
报告的是 2.7 吗? python3 --version
报告的内容是否有所不同(或根本没有效果)?当我尝试使用内置插件时,在Catalina升级后,这个错误就开始对我发生。检查您的.profile
和.bash_profile
,看看它们是否明确设置了自定义PYTHONHOME
和/或PYTHONPATH
。一种选择是更改它,以便仅在需要更新的Python时才显式手动设置ENV
变量。您可以考虑将python3
和pip3
进行符号链接以将标准命令留给操作系统。python -v
python -vv
python -vvv