设为首页 收藏本站
查看: 962|回复: 0

[经验分享] 初窥Python(三)——python版本升级及ipython的安装使用

[复制链接]

尚未签到

发表于 2018-8-4 06:21:43 | 显示全部楼层 |阅读模式
  在使用CentOS6.6 X64系统时,由于系统自带的python版本为2.6.6,而2.x版本中当前普遍使用的为2.7版本,所以我们要对系统的python版本做一个升级。ipython是一个增强版的shell,支持TAB补全,自动缩进等供能,比默认的python shell要好用很多。下面主要介绍如何升级python版本,安装pip并使用pip install安装ipython搭建一个简易的 python环境。
1. 官网下载安装包:
[root@localhost ~]# cd /usr/local/src  
[root@localhost src]# wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
2. 解压、编译、安装:
[root@localhost src]# tar zxf Python-2.7.10.tgz  
[root@localhost src]# cd Python-2.7.10
  这里需要注意,在编译安装之前,需要确保系统中已经安装了openssl-devel,zlib-devel,readline-devel,sqlite-devel,原因会在文末阐述。
[root@localhost Python-2.7.10]# yum install -y openssl-devel zlib-devel readline-devel sqlite-devel  
[root@localhost Python-2.7.10]# ./configure --prefix=/usr/local/python2.7.10
  
[root@localhost Python-2.7.10]# make && make install
3. 修改当前python命令版本:
  安装完成后,查看python版本:
[root@localhost ~]# python -V  
Python 2.6.6
  发现版本并没有改变,需要手动建立软链接:
[root@localhost ~]# rm -f /usr/bin/python  这里不必担心误删除,因为在/usr/bin目录下还有一个python2.6命令:
[root@localhost ~]# python2.6 -V  
Python 2.6.6
  所以大胆rm -f即可。建立软链接:
[root@localhost ~]# ln -s /usr/local/python2.7.10/bin/python2.7 /usr/bin/python  现在再查看python版本:
[root@localhost ~]# python -V  
Python 2.7.10
  升级版本后,还剩余一些扫尾工作。由于yum命令只支持到使用python2.6,为了防止yum命令失效,修改/usr/bin/yum文件:
[root@localhost ~]# vim /usr/bin/yum  将第一行的
#!/usr/bin/python  修改为
#!/usr/bin/python2.6  保存退出即可。
4. 安装pip:
  pip为python的包管理工具,类似于CentOS 的yum和Node.js的npm,相信接触过python的同学对pip都很熟悉。由于准备使用pip来安装ipython,当前前提是要将 pip安装上啦。安装pip需要首先安装setuptools(如下载链接失效,请点击这里自行下载):
[root@localhost src]# wget https://pypi.python.org/pypi?:action=show_md5&digest=f72e87f34fbf07f299f6cb46256a0b06  
[root@localhost src]# tar zxf setuptools-18.1.tar.gz
  
[root@localhost src]# cd setuptools-18.1
  
[root@localhost setuptools-18.1]# python setup.py install
  安装成功后如图-1所示。
DSC0000.jpg

  图-1 setuptools安装成功
  完成后,安装pip(如下载链接失效,请点击这里自行下载):
[root@localhost src]# wget https://pypi.python.org/packages/source/p/pip/pip-7.1.0.tar.gz#md5=d935ee9146074b1d3f26c5f0acfd120e  
[root@localhost src]# tar zxf pip-7.1.0.tar.gz
  
[root@localhost src]# cd pip-7.1.0
  
[root@localhost pip-7.1.0]# python setup.py install
  安装成功后如图-2所示。
DSC0001.jpg

  图-2 pip安装成功
  安装完成后的pip文件位于/usr/local/python2.7.10/bin/目录下,为了方便使用,为pip建立软链接:
[root@localhost ~]# ln -s /usr/local/python2.7.10/bin/pip /usr/bin/pip5. 安装 ipython:
  使用pip命令安装ipython:
[root@localhost ~]# pip install ipython  安装成功后如图-3所示。
DSC0002.jpg

  图-3 ipython安装成功
  安装完成后的ipython文件位于/usr/local/python2.7.10/bin/目录下,为了方便使用,为ipython建立软链接:
[root@localhost ~]# ln -s /usr/local/python2.7.10/bin/ipython  /usr/bin/ipython  
[root@localhost ~]# ipython
  进入如下交互页面,如图-4所示,之后就可以使用ipython的TAB自动补全功能、自动缩进功能和类似sorted??查看方法介绍的功能了。
DSC0003.jpg

  图-4 开始使用ipython
补充:
  最后说一下,如果在make && make install Python2.7.10时系统中如果没有安装openssl-devel,zlib-devel,readline-devel,sqlite-devel四个包会分别出现什么问题。 如果没有安装zlib-devel,在安装setuptools时会报如图-5所示错误,即RuntimeError: Compression requires the (missing) zlib module错误:
DSC0004.jpg

  图-5 缺少zlib-devel
  如果没有安装openssl-devel,在使用pip install ipython命令安装ipython时会报如图-6所示错误,即ImportError: cannot import name HTTPSHandler 错误:
DSC0005.jpg

  图-6 缺少openssl-devel
  如果没有安装readline-devel和sqlite-devel,在使用ipython时会发现进入时报三个 WARNING,具体影响是ipython不能记录历史信息(当然这一点影响倒不大),同时ipython并没有颜色提示,TAB补全和自动缩进功能也没有,这样的ipython就显得毫无意义了,如图-7所示。
DSC0006.jpg

  图-7 缺少readline-devel和sqlite-devel
  如果已经在缺少包的情况下make && make install Python2.7.10,出现错误时只需yum install对应的包,之后再重新进入Python-2.7.10目录下make && make install即可解决问题,当然make && make install所需的时间还是比较长的,所以建议在make && make install之前就确认这四个包的安装情况,以便一次成功。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-546096-1-1.html 上篇帖子: python pysnmp使用 下篇帖子: python 并发执行之多线程
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表