在 linux 机器“Ubuntu 16.04.5 LTS”上,我至少安装了 3 个版本的 python:2.7、3.5 和 3.6.8
我遇到了一个问题,尤其是在 3.6 和 3.5 之间。
在使用 jupyter notebook 时,我看到它使用的是 3.6.8 python 版本。
但是当我尝试安装一个包时,pip
将它安装在 3.5 中。同样的问题是在终端中运行的 python。它运行 3.6.8
示例:
无论是在 jpyter 上还是在终端上,我都无法导入 pandas
包。 import pandas
返回模块未安装错误消息。
但是我检查的时候发现安装的可能是python3.5而不是3.6.8
我用 pip
安装它,但我仍然遇到同样的问题。我实际上不知道如何在不删除所有内容并从头开始的情况下解决这个问题,因为我有一个非常复杂的包设置,花了我很长时间来设置。
解决方案here没有太大帮助,因为我的电脑上没有 pip3.x。
你的想法?
最佳答案
由于您试图避免重新安装复杂的设置,并且它们可以很好地工作,因此使用 conda 甚至 venv 可能不太适合您。
但是,您始终可以在 PATH 中的某处创建适当命名的符号链接(symbolic link),以指向正确版本的 pip
。所以如果你有 ~/bin
在你的路径上,做类似的事情
ln -s /usr/lib/python2.7/...pip ~/bin/pip2.7
ln -s /usr/lib/python3.5/...pip ~/bin/pip3.5
ln -s /usr/lib/python3.6.8/...pip ~/bin/pip3.6
如果您有 root 访问权限,您甚至可以将链接直接放入 /usr/bin/
或您喜欢的任何位置。现在您可以运行 pip2.7
或 pip3.5
或 pip3.6
并在您想要的地方安装东西。
但在未来,希望您能从头痛中吸取教训并使用虚拟环境。
关于python - 无法在正确的 python 版本上安装 python 包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54272262/