详解Ubuntu16.04安装Python3.7及其pip3并切换为默认版本

yipeiwu_com5年前Python基础

0.配置依赖环境,如果不进行这步可能会出现一些问题

中间可能有多余空格,去除下再运行,一般都能安装成功,如果不能可以先更新下sudo apt-get update
sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev 
libreadline-dev tk-dev libgdbm-dev libdb-dev libpcap-dev xz-utils libexpat1-dev 
liblzma-dev libffi-dev libc6-dev

1.直接去官网下载你想的版本

2.解压下载的包,在这之前你可以先mv你的包到指定位置解压

jianjiacheng@J-computer:~$ tar zxvf Python-3.7.1

3.进入解压目录

jianjiacheng@J-computer:~$ cd Python-3.7.1/

4.建立安装的目录

sudo mkdir -p /usr/local/python3

5.编译安装

执行这步是后面最好加上 --enable-optimizations 会自动安装pip3及优化配置
# ./configure --prefix=/usr/local/python3 --enable-optimizations
# make
# sudo make install

6.删除软链接

先执行查看版本,如果有则证明软链接已存在,需要先删去以前的再重新建立
//这里表明我已有python3的软链接而没有pip3的软链接所以需要删除python3的软链接重新建立
jianjiacheng@J-computer:~/Python-3.7.1$ python3 -V
Python 3.5.2

jianjiacheng@J-computer:~$ pip3 -V
bash: /usr/lib/command-not-found: /usr/bin/python3: bad interpreter: No such file or directory
rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3

7.建立新的指向python3.7的软链接

#添加python3的软链接
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
#添加 pip3 的软链接
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3

8.检测版本

jianjiacheng@J-computer:~$ python3 -V
Python 3.7.1
jianjiacheng@J-computer:~$ pip3 -V
pip 10.0.1 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

查找python项目依赖并生成requirements.txt的方法

一起开发项目的时候总是要搭建环境和部署环境的,这个时候必须得有个python第三方包的list,一般都叫做requirements.txt。 如果一个项目使用时virtualenv环境,...

深入了解Python中pop和remove的使用方法

Python关于删除list中的某个元素,一般有两种方法,pop()和remove()。 remove() 函数用于移除列表中某个值的第一个匹配项。 remove()方法语法: list...

pyinstaller打包多个py文件和去除cmd黑框的方法

pyinstaller打包多个py文件和去除cmd黑框的方法

1.打包多个py文件并且去除cmd黑框 格式:pyinstaller.exe -F 路径\文件名.py空格路径\文件名.py空格--noconsole 以上这篇pyinstaller打...

Python 将Matrix、Dict保存到文件的方法

如下所示: >>> import numpy >>> mat = numpy.matrix("1 2 3; 4 5 6; 7 8 9") >...

对Django 转发和重定向的实例详解

对Django 转发和重定向的实例详解

转发和重定向: 转发:一次请求和响应,请求的地址没有发生变化,如果此时刷新页面,就会出现重做现象。 重定向:一次以上的请求和响应,请求地址发生一次以上的变化,如果此时刷新页面,就不会发生...