CentOS中升级Python版本的方法详解


Posted in Python onJuly 10, 2017

CentOS升级Python2.6到Pythno2.7

最近在Linode上弄Python、出现ValueError: zero length field name in format这样的错误;

翻看文档之后发现只要升级Python到2.7以上版本就能解决问题。

用 Pythno -V 看了一下目前Centos上的版本是2.6的。

CentOS6系列里面默认安装的都是Python2.6的版本

所以我们可能会出现这样的错误

ValueError: zero length field name in format

这个时候我们就需要把Pythno2.6升级到Python2.7以上的版本

升级Python

系统默认安装的Python是2.6.x的,我们需要升级到Python2.7,用wget命令从官方下载源文件,然后解压进行编译

wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tar.xz
unxz Python-2.7.13.tar.xz
tar -vxf Python-2.7.13.tar

执行完以上命令会解压得到Python-2.7.13这个文件夹,进入该目录并执行以下命令进行配置

./configure --enable-shared --enable-loadable-sqlite-extensions --with-zlib

执行

vim ./Modules/Setup

找到#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz去掉注释并保存,然后进行编译和安装

make && make install

安装好Python2.7之后我们需要先把Python2.6做个备份

执行以下命令,对Python2.6进行备份,然后为Python2.7创建软链接、把Python2.7作为默认Python来用

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

然后编辑/usr/bin/yum,将第一行的#!/usr/bin/python修改成#!/usr/bin/python2.6.6

现在执行yum命令已经不会出现之前的错误信息了。

我们执行python -V查看版本信息,如果出现错误

error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory

编辑配置文件

vim /etc/ld.so.conf

查看是否有 /usr/local/lib,没有的话请添加一行、保存退出;

然后刷新配置

/sbin/ldconfig 
/sbin/ldconfig -v

PS:如果你原来在python2.6环境中安装了Pip的话、是需要重新安装

PS2:如果你原来用pip install xxx 安装了第三方库的话也是需要重新安装的

Python 相关文章推荐
用python分割TXT文件成4K的TXT文件
May 23 Python
在Python中使用HTML模版的教程
Apr 29 Python
Flask的图形化管理界面搭建框架Flask-Admin的使用教程
Jun 13 Python
Python+微信接口实现运维报警
Aug 27 Python
python爬虫爬取快手视频多线程下载功能
Feb 28 Python
python opencv将表格图片按照表格框线分割和识别
Oct 30 Python
python实现回旋矩阵方式(旋转矩阵)
Dec 04 Python
Python使用requests模块爬取百度翻译
Aug 25 Python
Python爬虫破解登陆哔哩哔哩的方法
Nov 17 Python
详解anaconda安装步骤
Nov 23 Python
详解如何修改jupyter notebook的默认目录和默认浏览器
Jan 24 Python
python 实现mysql自动增删分区的方法
Apr 01 Python
pygame 精灵的行走及二段跳的实现方法(必看篇)
Jul 10 #Python
Python 实现数据库更新脚本的生成方法
Jul 09 #Python
Python 实现数据库(SQL)更新脚本的生成方法
Jul 09 #Python
解决python文件字符串转列表时遇到空行的问题
Jul 09 #Python
python3 shelve模块的详解
Jul 08 #Python
Python基于scapy实现修改IP发送请求的方法示例
Jul 08 #Python
Python开发微信公众平台的方法详解【基于weixin-knife】
Jul 08 #Python
You might like
菜鸟修复电子管记
2021/03/02 无线电
删除无限分类并同时删除它下面的所有子分类的方法
2010/08/08 PHP
深入解析PHP的引用计数机制
2013/06/14 PHP
Yii列表定义与使用分页方法小结(3种方法)
2016/07/15 PHP
php+redis实现多台服务器内网存储session并读取示例
2017/01/12 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
在laravel中使用with实现动态添加where条件
2019/10/10 PHP
JavaScript高级程序设计 读书笔记之十一 内置对象Global
2012/03/07 Javascript
js获取系统的根路径实现介绍
2013/09/08 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
Extjs表单常见验证小结
2014/03/07 Javascript
javascript动态控制服务器控件实例
2014/09/05 Javascript
js 左右悬浮对联广告特效代码
2014/12/12 Javascript
jQuery中 prop() attr()使用详解
2015/05/19 Javascript
js简单工厂模式用法实例
2015/06/30 Javascript
AngularJS ngModel实现指令与输入直接的数据通信
2016/09/21 Javascript
bootstrap table表格插件使用详解
2017/05/08 Javascript
详解http访问解析流程原理
2017/10/18 Javascript
Hexo已经看腻了,来手把手教你使用VuePress搭建个人博客
2018/04/26 Javascript
layui的面包屑或者表单不显示的解决方法
2019/09/05 Javascript
js实现简易拖拽的示例
2020/10/26 Javascript
[02:20]DOTA2亚洲邀请赛 IG战队出场宣传片
2015/02/07 DOTA
python使用urllib2提交http post请求的方法
2015/05/26 Python
Selenium 模拟浏览器动态加载页面的实现方法
2018/05/16 Python
Python使用pymongo模块操作MongoDB的方法示例
2018/07/20 Python
Django框架实现的简单分页功能示例
2018/12/04 Python
Tensorflow 实现释放内存
2020/02/03 Python
Python自省及反射原理实例详解
2020/07/06 Python
python xlsxwriter模块的使用
2020/12/24 Python
美国Randolph太阳镜官网:美国制造的飞行员太阳镜和射击眼镜
2018/06/15 全球购物
商务日语毕业生自荐信
2013/11/23 职场文书
4S店客服专员岗位职责
2015/04/07 职场文书
2016大学优秀学生干部事迹材料
2016/03/01 职场文书
mysql中between的边界,范围说明
2021/06/08 MySQL
Python各协议下socket黏包问题原理
2022/04/12 Python
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
2022/04/14 Python