博客
关于我
CentOS python 2.x 升到 3.x 遇到的一些问题记录
阅读量:794 次
发布时间:2019-03-25

本文共 1817 字,大约阅读时间需要 6 分钟。

27145c441627bff7cc268eb00d7570c716416d6de311bfb1a74e5cb3a8c395cd2

CentOS 系统升级 Python 3 安装指南

将 Python 从 CentOS 默认的 Python 2.6 升级到最新版本 Python 3.5.2,可以通过以下步骤实现:


1. 查看系统和 Python 版本

确保系统已安装必要的编译工具和依赖:

head -n 1 /etc/issue

结果可能显示:

CentOS release 6.7 (Final)

查看当前 Python 版本:

python --version

结果可能显示:

Python 2.6.6 (r266:84292, Jul 23 2015, 15:22:56) on linux2

2. 下载并安装 Python 3

访问 Python 官方 FTP 服务器,选择适合的 Python 3.x 版本:

wget http://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

解压下载文件:

tar -zxvf Python-3.5.2.tgz

进入解压目录:

cd Python-3.5.2

创建安装目录并安装:

mkdir /usr/local/python3.5cd /usr/local/python3.5./configure --prefix=/usr/local/python3.5makesudo make install

3. 修改 Python 命令

创建软链接:

mv /usr/bin/python /usr/bin/pythonbakln -s /usr/local/python3.5/bin/python3.5 /usr/bin/python

验证安装结果:

python --version

应输出:

Python 3.5.2 (default, Oct  8 2016, 02:05:39) on linux

4. 解决 CentOS 中 yum 问题

升级 Python 可能会导致 yum 无法正常运行:

yum

出现错误提示:

File "/usr/bin/yum", line 30except KeyboardInterrupt, e:^SyntaxError: invalid syntax

修改 yum 脚本,将第一行 #!/usr/bin/python 更换为 #!/usr/bin/python2.6,然后保存并退出。

重新尝试运行 yum,如果正常运行,完成!


5. 安装 SSL 模块

由于 Python 3 需要 SSL/TLS 依赖,安装相关软件包:

yum install openssl-devel

完成后,重新编译安装 Python:

make clean./configure --prefix=/usr/local/python3.5makesudo make install

6. 使用pip安装第三方库

如果 pip 安装时出现 pip 8.1.1 requires SSL/TLS 错误,先安装 SSL 依赖并重新配置:

sudo yum install -y sqlite sqlite-devel bzip2 bzip2-devel readline-devel

然后重新编译安装 Python:

make clean./configure --prefix=/usr/local/python3.5makesudo make install

完成后,验证 pip 是否正常工作:

pip -V

结果应明确显示 Python 3.5版本的 pip 版本。


7. 解决 ImportError: No module named 'requests'

如果安装后 import requests 出现错误,尝试将 pip 安装到特定目录中:

pip install --target='/usr/lib/python3.5/' requests

或者安装到当前工作目录下:

pip install -t . requests

重新运行 Python 函数即可:

import requestsprint(requests.get('http://www.baidu.com').text)

转载地址:http://tesyk.baihongyu.com/

你可能感兴趣的文章
MySQL中使用IN()查询到底走不走索引?
查看>>
Mysql中使用存储过程插入decimal和时间数据递增的模拟数据
查看>>
MySql中关于geometry类型的数据_空的时候如何插入处理_需用null_空字符串插入会报错_Cannot get geometry object from dat---MySql工作笔记003
查看>>
mysql中出现Incorrect DECIMAL value: '0' for column '' at row -1错误解决方案
查看>>
mysql中出现Unit mysql.service could not be found 的解决方法
查看>>
mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
查看>>
Mysql中各类锁的机制图文详细解析(全)
查看>>