1.update-alternatives --list python #我们可以使用 update-alternatives 来为整个系统更改 Python 版本。以 root 身份登录,首先罗列出所有可用的 python 替代版本信息:
update-alternatives: error: no alternatives
for
python
#如果出现以上所示的错误信息,则表示 Python 的替代版本尚未被 update-alternatives 命令识别。想解决这个问题,我们需要更新一下替代列表,将 python2.7 和 python3.6 放入其中。
2.update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
update-alternatives: using
/usr/bin/python2
.7 to provide
/usr/bin/python
(python)
in
auto mode
update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
update-alternatives: using
/usr/bin/python3
.6 to provide
/usr/bin/python
(python)
in
auto mode
--install 选项使用了多个参数用于创建符号链接。最后一个参数指定了此选项的优先级,如果我们没有手动来设置替代选项,那么具有最高优先级的选项就会被选中。这个例子中,我们为 /usr/bin/python3.6 设置的优先级为2,所以update-alternatives 命令会自动将它设置为默认 Python 版本。
3.接下来,我们再次列出可用的 Python 替代版本。
update-alternatives --list python
/usr/bin/python2
.7
/usr/bin/python3
.6
4.现在开始,我们就可以使用下方的命令随时在列出的 Python 替代版本中任意切换了。
update-alternatives --config python #然后在对话框中选择python版本
5.切换python版本后导致,pip和tox不能用
root@2164c6263fa8:/soft# pip
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ModuleNotFoundError: No module named 'pip
root@2164c6263fa8:/# tox
Traceback (most recent call last):
File "/usr/local/bin/tox", line 7, in <module>
from tox import cmdline
ModuleNotFoundError: No module named 'tox
解决方案:
1)apt-get install python3-distutils
2)curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
3)python get-pip.py
4)pip安装成功后,执行pip install tox。
参考:https://www.cnblogs.com/phpper/p/10887602.html
https://www.cnblogs.com/ruiyang-/p/10162581.html