在Linux下升级到Python3的两种方法

简介: 在Linux下升级到Python3的两种方法

第二种方法,更快捷方便。

原地址:https://www.cnblogs.com/study-xzc/p/12510770.html


在linux中有自带的python,但是python的版本是2.7,但是我们需要用到的是python3.x,所以就不得不升级python2.7为python3.x

方法一:

首先查看当前python的版本:

# python --version  或者  # python -V

下载最新版本的python:

# wget https://www.python.org/ftp/python/3.7.7/Python-3.7.7.tgz

下载完成之后进行解压缩:

# tar -zxvf Python-3.7.7.tgz

解压缩完成后进入解压缩后的目录

# cd Python-3.7.7/
# ./configure 


如果没有升级过Python就需要安装Python相关的依赖包:

# yum update -y
# yum install -y make gcc gcc-c++

完成依赖包的安装后执行:

# ./configure

编译和安装:

配置完成后,就可以编译了:

# make

编译完成后,安装:

# make install

安装完成后就可以查看python的版本了:

# python --version
Python 2.7.16

注意:在/usr/local/bin/下有一个python3的链接,指向bin目录下的python3.7

查看python的路径,在/usr/bin下面,可以看到python的链接是python2.7,所以执行python就相当于是执行python2.6

设置3.x为默认版本:

# ls -la /usr/bin | grep python

将原来的python的软连接重命名:

# mv /usr/bin/python /usr/bin/python.bak

将python链接至python3:

先进入解压的目录当中,有一个python的可执行文件,例如:

使用一下命令可以从根目录查找想要对应字符串的文件或文件夹:

# find / -name python

1. 在解压缩后的文件中查看当前路径
2. # pwd
3. # ln -s /home/ec2-user/Python-3.7.7/python /usr/bin/python

如果创建软链接失败在/usr/bin/中删除python这个文件,然后再创建一次软链接

这个时候再一次查看python的版本:

# python --version

若是输出为3.x,就说明是python3

配置yum:

升级Python版本之后将由默认的python指向了python3,yum不能正常使用,需要更改yum的配置文件

# vi /usr/bin/yum
# vi /usr/libexec/urlgrabber-ext-down

修改文件内容如下:

#!/usr/bin/python ==> #!/usr/bin/python2.7

pip下载地址

https://pypi.python.org/pypi/pip

安装pip

# tar -xvzf pip-20.0.2.tar.gz
# cd pip-20.0.2
# python setup.py install

方法二:

也可以使用anaconda辅助安装python3

1.下载安装脚本:

# wget https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh

2.运行安装脚本:

# bash Anaconda3-2020.02-Linux-x86_64.sh

运行脚本时给出的选项enter或yes

3.修改环境变量

# echo "export PATH=/root/anaconda3/bin:$PATH" >> /etc/profile
# source /etc/profile
# conda --version

4.创建软链接

# rm -f /usr/bin/python
# ln -s /root/anaconda3/bin/python /usr/bin/python

5.配置yum:

升级Python版本之后将由默认的python指向了python3,yum不能正常使用,需要更改yum的配置文件

# vi /usr/bin/yum
# vi /usr/libexec/urlgrabber-ext-down

修改文件内容如下:

#!/usr/bin/python ==> #!/usr/bin/python2.7

这个方法配置完成会自带pip

目录
相关文章
|
5月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
469 1
|
4月前
|
监控 安全 程序员
Python日志模块配置:从print到logging的优雅升级指南
从 `print` 到 `logging` 是 Python 开发的必经之路。`print` 调试简单却难维护,日志混乱、无法分级、缺乏上下文;而 `logging` 支持级别控制、多输出、结构化记录,助力项目可维护性升级。本文详解痛点、优势、迁移方案与最佳实践,助你构建专业日志系统,让程序“有记忆”。
374 0
|
6月前
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
221 2
|
6月前
|
调度 Python
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
178 0
|
6月前
|
传感器 大数据 API
Python数字限制在指定范围内:方法与实践
在Python编程中,限制数字范围是常见需求,如游戏属性控制、金融计算和数据过滤等场景。本文介绍了五种主流方法:基础条件判断、数学运算、装饰器模式、类封装及NumPy数组处理,分别适用于不同复杂度和性能要求的场景。每种方法均有示例代码和适用情况说明,帮助开发者根据实际需求选择最优方案。
295 0
|
6月前
|
Ubuntu 物联网 Linux
从零安装一个Linux操作系统几种方法,以Ubuntu18.04为例
一切就绪后,我们就可以安装操作系统了。当系统通过优盘引导起来之后,我们就可以看到跟虚拟机中一样的安装向导了。之后,大家按照虚拟机中的顺序安装即可。 好了,今天主要介绍了Ubuntu Server版操作系统的安装过程,关于如何使用该操作系统,及操作系统更深层的原理,还请关注本号及相关圈子。
|
5月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
662 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
6月前
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
1920 10
|
6月前
|
机器学习/深度学习 数据采集 算法
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
363 4
|
5月前
|
算法 调度 决策智能
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
151 0