文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python升级和兼容性配置是怎样的

2023-06-04 11:31

关注

Python升级和兼容性配置是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

Python里面有个现象很奇怪,一般要学习Python都会纠结是学习2和3,这个差别和纠结Java5和Java6是完全不一样的,因为Python里面的兼容性确实是个问题,在《流畅的Python》中写道:Guido(Python之父,仁慈的独裁者)在设计 Python3 的过程中,受一篇文章 “Python warts” 的影响,决定不向后兼容,否则无法修复大多数缺陷,然后Python很火,你要用Python,就得按照这个理念来。兼容性的问题到了开发者这里就是个大麻烦。

Python2和3的差别很大,其实不兼容也还可以理解,当做两个分支也行,但是2.6和2.7的差别竟然也不小。有时候部署环境还是很纠结的。比如操作系统中默认的Python版本是2.6,但是很多应用中的最低要求是2.7,所以就得纠结这个,为了应用还是得升级。

首先是下载个2.7的安装包。

wget http://python.org/ftp/python/2.7/Python-2.7.tar.bz2 --no-check-certificate

解压 使用的选项是-j 这个和其他压缩文件还是有些差别的。

tar -jxvf Python-2.7.tar.bz2

把解压的Python目录放到/user/local下面去。

mv Python-2.7 /usr/local/

在源码包中,我们修改Modules/Setup.dist里面zlib的配置

把注释去掉。

zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz

剩下的步骤就是编译安装了。

./configure

make all

如果这个时候出现了make的错误,

make: *** [Modules/zlibmodule.o] Error 1

信息显示是和zlib相关的信息,得重新安装一个包zlib-devel

yum install zlib-devel

这个阶段最好,后面就很轻松了。

make all

make install

make clean

make distclean

安装步骤部署下来,目前的系统层面的Python还是默认的2.6,我们需要修改下默认的配置,把/usr/bin下面的链接改一下。

/usr/local/bin/python2.7 -V

mv /usr/bin/python /usr/bin/python2.6_bak --备份一下原来的。

重新创建软链接

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

[root@oel641 Python-2.7]# python -V

Python 2.7

接下来就是yum的部分了,2.7版本中不兼容2.6的部分,我们就得修改下yum文件头,把python的版本指向2.6

比如修改文件/usr/bin/yum的头部内容为

#!/usr/bin/python2.6

接下来就是pip这样的工具了。

安装pip,先要配置setuptools,一步一步来,倒还不算麻烦。

wget https://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg --no-check-certificate

wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate -O - | python

然而如果后续你要安装一些Python的模块,比如psutil,mysql-connector的时候,使用yum安装就有问题了,因为yum基于的是python 2.6,在2.7的库文件里是没有的。一种解决方式就是下载源码包,源码安装。

折腾了一圈,终于可以使用psutil了,mysql-connector的配置也通了。

剩下的事情就是写一些简单的脚本或者拿来主义,借鉴别人好的脚本内容。调试一把,然后在这个基础上补充一些定制的内容就妥了。

Python升级和兼容性配置是怎样的

看完上述内容,你们掌握Python升级和兼容性配置是怎样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯