1、报错提示
安装命令:
apt-get install python3.7
此时报错:
E: Unable to locate package python3.7
E: Couldn't find any package by glob 'python3.7'
E: Couldn't find any package by regex 'python3.7'
2、为什么ubuntu16.04安装python3.7有坑
ubuntu16.04默认的软件repository中并不包含python3.7(默认Python2.7,最高python3.5)
3、解决办法
sudo apt-get install -y software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.7
or
sudo apt-get install -y software-properties-common
sudo add-apt-repository ppa:jonathonf/python-3.7
sudo apt-get update
sudo apt-get install python3.7
4、设置python优先
ubuntu16.04默认内置了python2.7版本,所以当你在终端输入python -V
时,就会出现类似Python 2.7.12
等版本字样。
查看python版本的优先级
sudo update-alternatives --config python
若没有设置优先级,则会显示如下update-alternatives: error: no alternatives for python3
此时你可以通过update-alternatives
来设置默认python版本, 最后的参数1,2是优先级,数字越大优先级越高,比如经过如下设置后,在终端输入python -V
,显示的就是3.7的版本了。
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.7 2
5、设置python的关联版本
1)先备份原来的链接(在对系统执行删除之前进行备份是个好的习惯)
sudo cp /usr/bin/python /usr/bin/python_bak_27
2)删除原来默认指向python2.7版本的链接
sudo rm /usr/bin/python
3)重新指定新的链接给python3.7版本
sudo ln -s /usr/bin/python3.7 /usr/bin/python
上述方式在终端输入python -V
,会默认使用你设置的版本,但是如果你想在终端输入python时显示2.7的版本,输入python3时才是你想要的版本时,你就需要关联一下版本。也许你会碰到明明通过apt-get install python3.7
安装了python3版本,但是在终端输入python3时却提示:bash: /usr/bin/python3: No such file or directory
,这时就需要设置好关联。
1)打开.bashrc
vim ~/.bashrc
2)在.bashrc中合适位置添加
alias python3=python3.7
or
alias python3='/usr/bin/python3.7'
3)保存并退出文件编辑,使配置生效
source ~/.bashrc
6、为python安装对应的pip
curl https://bootstrap.pypa.io/ez_setup.py -o - | python3.7 && python3.7 -m easy_install pip
or
curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py" python3 get-pip.py --user
在运行python3 xxx.py
时若出现类似报错:
File "xxx.py", line 11, in <module>
import requests
ModuleNotFoundError: No module named 'requests'
则使用以下命令解决:
pip install requests
7、卸载python3.7
sudo apt autoremove python3.7
注:Ubuntu16.04自带的2.7版本切勿随意卸载。