CentOS 6.5上安装python2.7、pip以及Python命令行补全和yum冲突解决

     目前CentOS6.5上自带的python版本为2.6,升级到python2.7会碰到很多问题。本文将介绍如何安装python2.7、pip以及python命令行补全。

一、如何安装python2.7

     (1)gcc编译器,可以单独安装gcc,也可以安装“Development Tools” 。

      yum -y install gcc 或者 yum -y groupinstall  "Development tools"

     (2)python依赖包

      yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel

     (3)python2.7下载安装

     wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz
     tar vxf Python-2.7.11.tgz
     cd Python-2.7.11
     ./configure --prefix=/usr/local
     make && make install

     (4)软链接

      如果在命令行想输入python直接链接到python2.7,可以建立python到python2.7的软链接。

  #备份已有的python命令
  mv python python-old
  #建立python到python2.7的软链接
  ln -s /usr/local/bin/python2.7  /usr/bin/python

二、如何安装pip

     (1)安装依赖包setuptools

wget --no-check-certificate  https://pypi.python.org/packages/ff/d4/209f4939c49e31f5524fa0027bf1c8ec3107abaf7c61fdaad704a648c281/setuptools-21.0.0.tar.gz#md5=81964fdb89534118707742e6d1a1ddb4
tar vxf setuptools-21.0.0.tar.gz 
cd setuptools-21.0.0
python setup.py  install

     (2)安装pip

wget --no-check-certificate  https://pypi.python.org/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz#md5=6b86f11841e89c8241d689956ba99ed7
tar vxf pip-8.1.1.tar.gz 
cd pip-8.1.1
python setup.py install

     (3)pip包的升级

pip install --upgrade pip

三、python命令行补全

     默认情况下,python命令行是不能自动补全的,使用不友好,必须自动添加如下python代码才能实现自动补全。如下代码的文件名为tab.py:

      1 #!/usr/bin/env python
      2 #-*- coding:utf-8 -*-
      3 
      4 import sys
      5 import readline
      6 import rlcompleter
      7 import atexit
      8 import os
      9 readline.parse_and_bind('tab: complete')
     10 histfile = os.path.join(os.environ['HOME'], '.pythonhistory')
     11 try:
     12    readline.read_history_file(histfile)
     13 except IOError:
     14    pass
     15 atexit.register(readline.write_history_file, histfile)
     16 del os, histfile, readline, rlcompleter                                               

      如果缺少相应模块,还得自行通过pip安装相应缺失模块。根据相应的python安装路径,将tab.py文件拷贝到python对应lib目录下,例如上述python2.7的安装路径为/usr/local,其lib目录为/usr/local/lib/python2.7,那么将tab.py放置在该目录下即可。

这样在python命令行模式下导入tab,即

  import tab

     这样就可以实现python命令行的自动补全。

四、yum冲突解决

       CentOS6.5升级python2.6到python2.7后,yum工具会报错,这是因为默认的yum工具是python2.6解析的,升级python2.7后同时做了软链接/usr/bin/python ---> /usr/bin/python2.7,这样

/usr/bin/python不能链接到/usr/bin/python2.6,所以yum工具报错,解决办法之一是修改/usr/bin/yum文件,及修改yum的解释环境,将/usr/bin/yum的解释器修改为“#!/usr/bin/python2.6”即可,这样yum会用python2.6解析,解决了冲突。

    

原文地址:https://www.cnblogs.com/maociping/p/5166785.html