从Python2.7升级到Python3遇问题:安装Python3.6失败且Python3已存在
解决Python版本切换与Python3.6安装问题
嘿,我来帮你搞定这个Python版本的问题!从你的反馈来看,你的系统已经预装了Python3.5.1,其实完全可以直接用这个版本起步;但如果你确实需要Python3.6,我也会告诉你怎么解决安装失败的问题。
一、先用已有的Python3.5过渡
系统已经提示python3 is already the newest version (3.5.1-3),那你现在就能直接用Python3了:
- 打开Python3解释器:直接敲命令
python3 - 运行Python3脚本:
python3 你的脚本文件名.py
要是想让敲python的时候默认启动Python3(而不是Python2.7),可以给bash加个别名,操作很简单:
- 打开bash配置文件:
nano ~/.bashrc - 在文件末尾加一行:
alias python='python3' - 保存退出后,刷新配置:
source ~/.bashrc
之后再输入python,就会自动启动Python3.5啦,不会影响系统原本的Python2.7。
二、安装Python3.6(如果你确实需要这个版本)
你遇到的E: Unable to locate package python3.6错误,是因为当前系统的默认软件源里没有Python3.6的包。以Ubuntu为例,咱们可以添加第三方源来解决:
- 先更新一下现有软件包列表:
sudo apt update - 添加deadsnakes源(这个源专门提供各种Python版本的安装包):
sudo add-apt-repository ppa:deadsnakes/ppa - 再次更新源,让系统识别到新添加的包:
sudo apt update - 现在就能顺利安装Python3.6了:
sudo apt install python3.6
安装完成后,敲python3.6就能直接启动这个版本。如果想把Python3.6设为默认的Python3版本,除了用别名,还可以用update-alternatives工具来管理多个版本:
- 先把Python3.5和3.6注册到alternatives里:
这里的数字是优先级,数字越大优先级越高,所以3.6的优先级设为2比3.5高。sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2 - 运行下面的命令选择默认版本:
sudo update-alternatives --config python3
之后会弹出选项,输入你想设置的版本对应的编号就行。
小提醒
- 别轻易修改
/usr/bin/python的默认指向,因为系统里很多工具还依赖Python2.7,改了可能会出问题,用别名的方式更安全。 - 如果用
update-alternatives管理版本,记得确认每个版本的依赖,避免影响系统自带的工具。
内容的提问来源于stack exchange,提问作者Test Inter
相关产品推荐
相关产品推荐

