CentOS 7下Python 2.7升级至Python3.6.1的实战教程

CentOS 7下Python 2.7升级至Python 3.6.1的实战教程

简介

本文将介绍在CentOS 7下如何将系统自带的Python 2.7版本升级到Python 3.6.1版本的具体步骤,同时也会对升级过程中可能会遇到的一些问题进行解决和说明。

步骤

1. 安装必备依赖

升级Python 3.6.1需要一些必要的依赖,这里我们需要先安装这些必备依赖。

sudo yum install gcc openssl-devel bzip2-devel zlib-devel readline-devel sqlite-devel

2. 下载并解压源码包

从Python官网下载Python3.6.1源码包,并解压到目录/usr/src/下。

cd /usr/src/
sudo wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
sudo tar xzf Python-3.6.1.tgz

3. 编译与安装Python3.6.1

进入解压后的Python源码目录,配置编译选项并进行编译和安装。

cd Python-3.6.1
sudo ./configure --enable-optimizations
sudo make altinstall

altinstall选项表示将Python-3.6.1安装到一个独立的目录,不会覆盖系统自带的Python 2.7版本,也不会影响系统其它软件的正常运行。

4. 配置环境变量

为了使用新安装的Python 3.6.1版本,我们需要将它的路径添加到系统的环境变量PATH中。在/etc/profile文件末尾添加以下内容

sudo vim /etc/profile

末尾添加

# add Python3.6.1 path
export PATH=/usr/local/bin:$PATH

5. 测试Python3.6.1是否安装成功

执行以下命令,确认Python3.6.1版本已经成功安装。

python3.6 -V

执行后,将会输出类似如下的版本信息:

Python 3.6.1

至此,我们已经成功升级了CentOS 7下的Python 2.7版本到Python 3.6.1版本。

常见问题

1. Python 3.6.1的命令名称修改

默认情况下,Python 3.6.1的命令名称是python3.6而非python。如果想让Python 3.6.1的命令名称变为python,可以尝试以下步骤:

sudo mv /usr/bin/python /usr/bin/python2.7
sudo ln -s /usr/local/bin/python3.6 /usr/bin/python

2. python命令找不到

在配置环境变量时,如果只是将Python的路径添加到了普通用户的环境变量PATH中,而没有添加到root用户的环境变量中,则在root用户下,执行python命令时会提示“命令未找到”的错误提示。此时,可以执行以下命令,将Python的路径添加到root用户的环境变量中。

sudo visudo

在打开的文件中,找到以下行,将secure_path改为以下内容:

Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin

然后退出并保存文件。重新打开终端即可。

示例

1. Django应用迁移至Python 3.6.1

在原来使用Python 2.7版本的Django应用上,执行以下步骤,可以迁移至Python 3.6.1版本:

# 安装Django 2.2.13版本
pip install django==2.2.13

# 使用下面的命令检查是否需要修改代码
python3.6 -m compileall <your_django_project_path>

# 如果上一步检查到错误,可以执行下面的命令解决
2to3 -w <your_django_project_path>

2. Ansible使用升级Python版本

在原来使用Python 2.7版本的Ansible中,执行以下步骤,可以使用Python 3.6.1升级Ansible:

# 安装EPEL Repository
sudo yum install epel-release

# 安装Python 3.6.1
sudo yum install python36

# 使用update-alternatives命令更新Python命令
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2

# 配置Python环境变量
sudo vim /etc/profile
# add Python3.6 path
export PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/bin:/usr/local/lib/python3.6

总结

通过以上步骤,我们已经成功将CentOS 7下的Python 2.7版本升级到Python 3.6.1版本,并对升级过程中可能遇到的问题给出了解决方案。希望本文对你在实际应用中遇到的问题有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CentOS 7下Python 2.7升级至Python3.6.1的实战教程 - Python技术站

(0)
上一篇 2023年5月30日
下一篇 2023年5月30日

相关文章

  • Numpy对数组的操作:创建、变形(升降维等)、计算、取值、复制、分割、合并

    当然,我很乐意为您提供“Numpy对数组的操作”的完整攻略。以下是详细步骤和示例。 Numpy对数组的操作 Numpy是中用于科学计算的一个重要库,它提供高的数组操作和数学函数。在Numpy中,数组是一个重要的数据结构,因此对数组的操作也是非常重要。下我们将介绍Numpy对数组的操作,包括创建、变形(升降维等)、计算、取值、复制、分割、合等。 1 创建数组 …

    python 2023年5月13日
    00
  • 容易被忽略的Python内置类型

    当我们学习Python编程语言时,通常只关注一些最常见的数据类型,比如:数字,字符串和列表等。然而,Python还有许多不常见但非常有用的内置数据类型,在编程过程中很容易地被忽略。接下来,我们将详细讲解这些容易被忽略的Python内置类型。 1. 元组(Tuple) 元组与列表类似,但相对少用,常用来临时存储、传递和返回多个值。与列表不同的是,元组是只读的,…

    python 2023年5月14日
    00
  • 如何基于Python创建目录文件夹

    要基于Python创建目录文件夹,你可以运用Python内置的os模块或pathlib模块。下面将详细讲解两种方法: 1. 使用os模块创建文件夹 1.1 导入模块 import os 1.2 创建文件夹 可以使用os.mkdir()函数来创建单个文件夹,例如: os.mkdir(‘test_dir’) 如果要创建多层文件夹,则需要使用os.makedirs…

    python 2023年6月2日
    00
  • python Windows最新版本安装教程

    Python Windows最新版本安装教程 Python是一种高级编程语言,广泛应用于Web开发,数据科学和人工智能等领域。在Windows上安装Python是学习和使用Python的第一步,本文将介绍如何在Windows上安装Python的最新版本。 步骤一 下载Python安装包 在官网 https://www.python.org/downloads…

    python 2023年5月30日
    00
  • 浅谈Python中threading join和setDaemon用法及区别说明

    我将为你详细讲解“浅谈Python中threading join和setDaemon用法及区别说明”的完整攻略。 1. 简介 在Python中,使用threading模块可以创建并发的线程。在多线程编程中,有两种常用的线程常用方法,分别是join()和setDaemon()方法。 2. join方法 join()方法是Thread类提供的一个方法,用来阻塞主…

    python 2023年5月19日
    00
  • Python中re模块常用方法总结分析

    下面是详细的攻略: Python中re模块常用方法总结分析 在Python中,re模块是用于正则表达式操作的模块。它提供了一系列函数,用于进行字符串的匹配、替换、分割等操作。本文将总结分析Python中re模块的常用方法,并提供两个示例说明。 re模块常用函数 在Python中,re模块提供了一系列函数,用于进行正则表达式操作。下面是re模块常用函数的介绍:…

    python 2023年5月14日
    00
  • 什么有那么多人选择Python,真的有那么好吗?

    为什么有那么多人选择Python,真的有那么好吗? Python是一门现代化的编程语言,因其简单易学、易用、开源、跨平台、功能强大和丰富的生态系统而备受欢迎。接下来,我们将详细讲解Python的优点。 1. 简单易学 Python语言的语法简单、清晰,排版规范,读起来像英语一样流畅自然,没有太多瑣碎的符号和花哨的编码机制,提供了极高的可读性和可维护性,是一门…

    python 2023年6月7日
    00
  • Python3.7安装PyQt5 运行配置Pycharm的详细教程

    下面是安装PyQt5并配置PyCharm的详细步骤: 1. 安装Python3.7 首先,你需要在你的电脑上安装Python3.7。你可以在Python官网(https://www.python.org/downloads/)下载最新的Python3.7版本的安装程序,并按照提示进行安装。 2. 利用pip安装PyQt5 在安装完Python3.7后,你需要…

    python 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部