python3.6和pip3:Ubuntu下安装升级与踩坑之路
本文以Ubuntu16.x系统为例,演示如何安装python3.6和相应环境。安装Python3的机器必须要能访问外网才能进行如下操作!
1. 安装方式
在Ubuntu下安装python有两种方式:
1. 通过apt安装 (推荐)
2. 源码安装
这里推荐第一种方式安装,因为apt安装会帮你做很多善后工作,而源码安装可能需要配置和系统修改的地方比较多。
无论是第一点还是第二点,首先要确认当前系统中Python3是否已安装。
2. 确认本地Python3版本
Python3在本地环境里一般存在三种情况:
1. 系统内置python3.6版本
2. 系统未安装任何python3版本
3. 系统安装了python3版本,但是非3.6版本
第一种情况,则直接可以跳过本文阅读;
第二种情况的话安装也相对简单(不涉及python3旧版本的操作)
第三种是稍微麻烦点且较常见,一般的系统都会预安装python3版本。
首先查看本地是否安装python3版本,输入:
python3 -V
或者
/usr/bin/python3 -V (which python3可以看到python3的实际位置)
如果显示是3.6.x,那么就相当于系统已经安装好了python3.6;
如果显示command not found,则对应第二种情况;
如果显示的是3.5或者其他的python3版本,则对应第三种情况;
下面我们演示最麻烦的情况(第三种):
3. Python3安装(APT方式)
3.1 安装Python软件工具
sudo apt-get install python-software-properties
3.2 添加仓库镜像源
sudo add-apt-repository ppa:fkrull/deadsnakes
如下图,提示Enter的时候,输入回车键

3.3 更新源
sudo apt-get update
3.4 从本地仓库安装python
sudo apt-get install python3.6
3.5 测试python3.6是否被正确安装
1)输入:python3 -V或者/usr/bin/python3 -V

可以看到:python3指向的还是python3的旧版本
2)查看当前的python3的软连接

3.6 修改python3默认版本
1)查看python3.6的位置
输入whereis python,可以看到python3.6的位置(一般都在/usr/bin目录)

2)修改软连接
#删除原来的软连接
rm -rf /usr/bin/python3 #建立新的软连接
ln -s /usr/bin/python3.6m /usr/bin/python3 #重新测试python3版本
输入python3 -V
如图所示,显示Python 3.6.2,安装成功!

3.7 安装python3.6-dev包
#用pip安装很多python的package都会依赖python-dev包
sudo apt install -y python3.6-dev
3.8 pip3安装
#安装pip3
sudo apt install -y python3-pip #查看pip3版本
pip3 -V

如图所示,pip3安装成功,且安装包会放到python3.6的dist-packages下面。
4. Python3安装(源码方式)
4.1 地址说明
源码包下载地址:https://www.python.org/downloads/release/python-368/ (其中368指的就是3.6.8版本,版本以此内推)

4.2 更新相关依赖lib和软件
#更新源
sudo apt update #安装相关软件包
sudo apt-get install -y gcc make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev
4.3 下载Python源码包(linux版本)
#下载Python包(3.6.8可以替换成你想要的具体版本号),wget如果没有就用sudo yum install -y wget安装
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz #解压缩Python3压缩包
tar -xvf Python-3.6..tar.xz #进入对应的目录
cd Python-3.6./
4.4 编译Python3.6.8
#配置和检查环境,生产Makefile,指的安装到/usr/local/python3
./configure --enable-optimizations --prefix=/usr/local/python3 #编译
sudo make #安装
sudo make install
4.5 测试python3.6是否被正确安装
1)输入:python3 -V或者/usr/bin/python3 -V

版本不对,同样指向了旧的Python3.5
2)修改软连接
#删除软连接
rm -rf /usr/bin/python3 #重新生成软链接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3 #重新测试python3版本
输入python3 -V

最终显示Python 3.6.8,安装成功!
4.6 修改默认pip3
1) 输入pip3 -V,报错(因为我们把python3指向了/usr/local/python3/bin/python3)

2) 修改pip3指向
#删除原来的pip3
rm -rf /usr/bin/pip3 #建立新的pip3软链接
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 #再次输入pip3 -V,版本显示正确了
pip3 -V

3)测试pip3命令:pip3 install,报错:Command '('lsb_release', '-a')' returned non-zero exit status 1

4)修复lsb_release命令
a) 先查找lsb_release命令:which lsb_release

b) 修改文件内容,python解释器改成python3.6

c) 再次尝试安装一个python包:pip3 install locust,安装成功!
5. pip加速
1. 创建pip.conf文件
sudo mkdir ~/.pip
sudo touch ~/.pip/pip.conf
2. 修改pip.conf内容
输入vim ~/.pip/pip.conf,添加以下内容:
[global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple [install] trusted-host=mirrors.aliyun.com
至此,你已经学会了在Ubuntu下用两种方式来搭建python3,并可以配置pip3国内源来快速安装python3相关的lib库。
博主:测试生财
座右铭:通过测试生涯完成原始积累,通过投资奔向财务自由
csdn:https://blog.csdn.net/ccgshigao
python3.6和pip3:Ubuntu下安装升级与踩坑之路的更多相关文章
- ubuntu下安装/升级软件
参考博客:https://blog.csdn.net/yjk13703623757/article/details/78945576 1.查看软件所有来源 ①.使用apt-cache madison列 ...
- Linux下安装opencv(踩坑记录帖)
1.首先安装依赖项:sudo apt install build-essential sudo apt install build-essentialsudo apt install cmake gi ...
- dell笔记本 win10 下安装 ubuntu16.04 踩坑记录
硬件配置情况: dell笔记本-灵越-5577 —— I5七代(带有集显),8G内存条DDR4,GTX1050,128G固态硬盘,1T机械硬盘. 固态硬盘划分为3部分,100GB给win10的C盘,1 ...
- 记录一下安装 mysql 的踩坑之路
坑点: 1.旧的mysql没有删除干净.在安装mysql的时候,没有注意到,在输入 “mysqld install” 指令时跳出来 exits,存在于另一个文件夹之中,这影响了后来的很多操作,包括ro ...
- Ubuntu下安装、激活并配置Pycharm
Ubuntu下安装.激活并配置Pycharm 最近在学习Python这门语言,到了需要Python编译器学习的阶段,通过网上了解各个Python编译器的优缺点,最后选择了pycharm作为Python ...
- ubuntu下安装rpm 文件
正想着如何把rpm package 安装到ubuntu上, 发现了这篇文章,转载一下 Ubuntu的软件包格式是deb,如果要安装rpm的包,则要先用alien把rpm转换成deb. sudo a ...
- [mongodb-10gen]ubuntu下安装方法
由于自己老是不死心,所以还是继续在UBUNTU下开始我的GOLANG,今天发现服务源很快一下子就把GO的源代码从GoogleProject上给hg回来了,所以今天才查了一下在UBUNTU下安装Mong ...
- ubuntu下安装pandas出现 compile failed with error code 1 in /tmp/pip_build_hadoop/pandas
都是用pip装的,是不是应该用apt-get 装的呀 ubuntu下安装pandas (出现 compile failed with error code 1 in /tmp/pip_build_ha ...
- ubuntu 下安装eclipse &java环境配置
前面有一篇的博客写的是ubuntu下安装eclipse和java环境的配置.当时是安装网上的攻略进行的 ,当然也是能够成功的. 近期把那台电脑送人了 ,仅仅好在自己的这台电脑上又一次安装一次了 ,唯一 ...
随机推荐
- 什么是Hexo博客
Hexo 是一个基于nodejs 的静态博客网站生成器,作者是来自台湾的Tommy Chen. 特点: 不可思议的快速 ─ 只要一眨眼静态文件即生成完成 支持 Markdown 仅需一道指令即可部署到 ...
- 时间序列ARIMA模型
时间序列ARIMA模型 1.数据的平稳性与差分法 让均值和方差不发生明显的变化(让数据变平稳),用差分法 2.ARIMA模型-----差分自回归平均移动模型 求解回归的经典算法:最大似然估计.最小二乘 ...
- PHP asort() 函数
------------恢复内容开始------------ 实例 对关联数组按照键值进行升序排序: <?php$age=array("Peter"=>"35 ...
- HTML <hr> 标签
高佣联盟 www.cgewang.com HTML <hr> 标签 实例 当内容的主题发生变化时,使用 <hr> 标签进行分隔: <h1>HTML</h1&g ...
- Skill 计算两点距离
https://www.cnblogs.com/yeungchie/ code procedure(ycHowFar(a b) prog((xAB yAB sAB) xAB = xCoord(a) - ...
- css浮动属性
1.为什么需要浮动 HTML中的标签元素大致分为三类:块状元素.内联元素.内联块元素. 每种元素都有其各自的特点,其中块状元素会独占一行,而内联元素和内联块元素则会在一行内显示.如果我们想让两个甚至多 ...
- luogu P5558 心上秋
LINK:心上秋 唐多令 宋 吴文英 何处合成愁.离人心上秋.纵芭蕉,不雨也飕飕.都道晚凉天气好,有明月,怕登楼. 年事梦中休.花空烟水流.燕辞归,客尚淹留.垂柳不萦裙带住.漫长是,系行舟. 心上秋 ...
- SpringCloud启动异常Stopping service [Tomcat]
问题场景: 领导让我搭建一套Jenkins实现自动化部署,项目是SpringCloud项目,配置的过程很顺利,给我提供了一台服务器做部署测试(服务器以前是做dev环境,很长时间没人用了) 我把所有项目 ...
- 简单的vector--- 2
如何重载operator[] 及其相关细节 如何使用 const_cast<>( ) 和 static_cast<>( ) 模板类 如何内部声明,外部定义友元函数 使用 ...
- Qt 中十六进制字节流转换为Base64编码
在Qt中,在网络通信时,有时需要将16进制字节流转换为Base64编码传输,在Qt的QByteArray类中,提供了与Base64转换的接口: //16进制字节流转为Base64 QByteArray ...