博客
关于我
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 权限登录问题:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
查看>>
MYSQL 查看最大连接数和修改最大连接数
查看>>
MySQL 查看有哪些表
查看>>
mysql 查看锁_阿里/美团/字节面试官必问的Mysql锁机制,你真的明白吗
查看>>
MySql 查询以逗号分隔的字符串的方法(正则)
查看>>
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT 、分页查询的优化、合理使用连接、子查询的优化)(上)
查看>>
mysql 查询数据库所有表的字段信息
查看>>
【Java基础】什么是面向对象?
查看>>
mysql 查询,正数降序排序,负数升序排序
查看>>
MySQL 树形结构 根据指定节点 获取其下属的所有子节点(包含路径上的枝干节点和叶子节点)...
查看>>
mysql 死锁 Deadlock found when trying to get lock; try restarting transaction
查看>>
mysql 死锁(先delete 后insert)日志分析
查看>>
MySQL 死锁了,怎么办?
查看>>
MySQL 深度分页性能急剧下降,该如何优化?
查看>>
MySQL 深度分页性能急剧下降,该如何优化?
查看>>
MySQL 添加列,修改列,删除列
查看>>
mysql 添加索引
查看>>
MySQL 添加索引,删除索引及其用法
查看>>
mysql 状态检查,备份,修复
查看>>
MySQL 用 limit 为什么会影响性能?
查看>>