ubuntu升级python版本
Ubunt16.04默认安装python2.7和3.5
注意:系统自带的python千万不能卸载
1:输入python
2:输入python3
3:输入命令sudo add-apt-repository ppa:jonathonf/python-3.6
第一种情况:如果显示不能添加"'ppa:~jonathonf/ubuntu/python-3.6'"这个ppa,
使用一下命令
sudo add-apt-repository ppa:deadsnakes/ppa
回车
第二种情况,直接回车即可
4:更新apt源:sudo apt-get update
5:安装python3.6:sudo apt-get install python3.6
6:调整python3的优先级,使得python3.6的最高
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
更改默认值,python默认为Python2,现在修改为Python3
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150
7:此时输入python
8;安装pip
-
wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
-
python3 get-pip.py
-
apt-get install python3.6-dev
9:导出与安装python环境包
1: pip freeze > packages.txt
这将会创建一个 packages.txt文件,其中包含了当前环境中所有包及各自的版本的简单列表(即pip list 所列出的包列表)
安装导入Python环境包
2: pip install -r packages.txt
说说linux软件版本管理命令update-alternatives
update-alternatives 命令用于处理linux系统中软件版本的切换,在各个linux发行版中均提供了该命令,命令参数略有区别,但大致是一样的。
1:注册软件
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150
其中:( --install link name path priority)
--install 表示向update-alternatives注册服务名。
link 为系统中功能相同软件的公共链接目录,比如/usr/bin/python(需绝对目录);
name 为命令链接符名称,如python path为你所要使用新命令、新软件的所在目录
priority为优先级,当命令链接已存在时,需高于当前值,因为当alternative为自动模式时,系统默认启用priority高的链接;# 整数 根据版本号设置的优先级(更改的优先级需要大于当前的)
第一个参数表示向update-alternatives注册服务名。
第二个参数是注册最终地址,成功后将会把命令在这个固定的目的地址做真实命令的软链,以后管理就是管理这个软链;
第三个参数:服务名,以后管理时以它为关联依据。
第四个参数,被管理的命令绝对路径。
第五个参数,优先级,数字越大优先级越高。
2:查看已注册列表
update-alternatives --display python
root@sctIS:/usr/bin# sudo update-alternatives --display java java - auto mode link best version is /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java link currently points to /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java link java is /usr/bin/java slave java.1.gz is /usr/share/man/man1/java.1.gz /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java - priority 1081 slave java.1.gz: /usr/lib/jvm/java-8-openjdk-amd64/jre/man/man1/java.1.gz root@sctIS:/usr/bin#