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环境的配置.当时是安装网上的攻略进行的 ,当然也是能够成功的. 近期把那台电脑送人了 ,仅仅好在自己的这台电脑上又一次安装一次了 ,唯一 ...
随机推荐
- Python元组运算符
Python元组运算符: len(元组名): 返回元组对象的长度 # len(元组名): # 返回元组对象的长度 tuple_1 = (1,4,5,2,3,6) print(len(tuple_1)) ...
- MYSQL的事物四大特性
MYSQL的事物四大特性(ACID) 1.什么是事物? 事务(Transaction)是并发控制的基本单位.所谓的事务,它是由单独单元的一个或者多个sql语句组成,在这个单元中,每个mysql语句是相 ...
- Calibre LVS BOX 详细用法
https://www.cnblogs.com/yeungchie/ LVS BOX的使用对于后端的团队协作起到非常便利的作用. 通过在lvs rules file添加BOX的相关语句可以达到这个目的 ...
- windows:shellcode 原理
shellcode,一段短小精干的代码,放在任何地方都能执行,不依赖当前所处环境,那么就有这么几点要求: 不能有全局变量:函数里的局部变量在栈空间,地址是执行的时候动态分配的:但全局变量在编译时,会由 ...
- springMVC 与 html RESTful 解决方案
若前端为html 而非jsp 且 拦截如下 <servlet-mapping> <servlet-name>springMVC</servlet-name> &l ...
- Python高手是怎样炼成的!
很多想从事python行业的朋友都会问到,零基础如何自学成为Python高手?根据小北多年教育的经验,我总结了几个小建议,想看干货的请看下文! 如何克服入门难问题? 其实小北觉得,最好的方法就是和一群 ...
- C# Thread.Join的报错情形——论执行完的线程能够成功执行Join吗
结论: 能, 执行完的线程调用Join不会抛出错误. Thread.Join()是什么? Join()函数用于阻塞地等待线程结束, 其行为是在线程A中调用了线程B的Join()后, 线程A将一直阻塞在 ...
- 深度学习 | 训练网络trick——mixup
1.mixup原理介绍 mixup 论文地址 mixup是一种非常规的数据增强方法,一个和数据无关的简单数据增强原则,其以线性插值的方式来构建新的训练样本和标签.最终对标签的处理如下公式所示,这很简单 ...
- 强化学习 3—— 使用蒙特卡洛采样法(MC)解决无模型预测与控制问题
一.问题引入 回顾上篇强化学习 2 -- 用动态规划求解 MDP我们使用策略迭代和价值迭代来求解MDP问题 1.策略迭代过程: 1.评估价值 (Evaluate) \[v_{i}(s) = \sum_ ...
- Take C# 8.0 for a spin
本文章为机器翻译.https://blogs.msdn.microsoft.com/dotnet/2018/12/05/take-c-8-0-for-a-spin/ 以C # 8兜风 我们昨天宣布Vi ...