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基础教程之类class定义使用方法
Feb 20 Python
python append、extend与insert的区别
Oct 13 Python
Python生成8位随机字符串的方法分析
Dec 05 Python
深入浅析python with语句简介
Apr 11 Python
selenium+python自动化测试之页面元素定位
Jan 23 Python
python中logging模块的一些简单用法的使用
Feb 22 Python
django drf框架中的user验证以及JWT拓展的介绍
Aug 12 Python
利用Python实现kNN算法的代码
Aug 16 Python
分享PyCharm的几个使用技巧
Nov 10 Python
python中从for循环延申到推导式的具体使用
Nov 29 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
Jan 10 Python
Django 自定义权限管理系统详解(通过中间件认证)
Mar 11 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
Terran兵种介绍
2020/03/14 星际争霸
解析PHP的session过期设置
2013/06/29 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
2014/07/28 PHP
PHP isset()与empty()的使用区别详解
2017/02/10 PHP
PHP7扩展开发之基于函数方式使用lib库的方法详解
2018/01/15 PHP
PHP定义字符串的四种方式详解
2018/02/06 PHP
php的优点总结 php有哪些优点
2019/07/19 PHP
laravel-admin解决表单select联动时,编辑默认没选上的问题
2019/09/30 PHP
jquery $.ajax入门应用二
2008/11/19 Javascript
JavaScript Event事件学习第一章 Event介绍
2010/02/07 Javascript
javascript定义函数的方法
2010/12/06 Javascript
JavaScript学习笔记之基础语法
2015/01/22 Javascript
简化版手机端照片预览组件
2015/04/13 Javascript
easyui中combotree循环获取父节点至根节点并输出路径实现方法
2016/11/10 Javascript
基于jPlayer三分屏的制作方法
2016/12/21 Javascript
Vue 父子组件、组件间通信
2017/03/08 Javascript
基于JavaScript实现滑动门效果
2017/03/16 Javascript
解决JS表单验证只有第一个IF起作用的问题
2018/12/04 Javascript
vue百度地图 + 定位的详解
2019/05/13 Javascript
p5.js临摹旋转爱心
2019/10/23 Javascript
vue 重塑数组之修改数组指定index的值操作
2020/08/09 Javascript
Python中第三方库Requests库的高级用法详解
2017/03/12 Python
Python threading的使用方法解析
2019/08/28 Python
python/Matplotlib绘制复变函数图像教程
2019/11/21 Python
pytorch 准备、训练和测试自己的图片数据的方法
2020/01/10 Python
Django ValuesQuerySet转json方式
2020/03/16 Python
用ldap作为django后端用户登录验证的实现
2020/12/07 Python
青年创业培训欢迎词
2014/01/08 职场文书
高中美术教学反思
2014/01/19 职场文书
公司2014年度工作总结
2014/12/10 职场文书
婚庆答谢词大全
2015/09/29 职场文书
教师师德承诺书2016
2016/03/25 职场文书
秀!学妹看见都惊呆的Python小招数!【详细语言特性使用技巧】
2021/04/27 Python
Java中使用Filter过滤器的方法
2021/06/28 Java/Android
VUE中的v-if与v-show区别介绍
2022/03/13 Vue.js
源码安装apache脚本部署过程详解
2022/09/23 Servers