推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Buffer2Disk
V2EX  ›  Python

Python 2.6 升级到 2.7,大家有什么经验没有

  •  
  •   Buffer2Disk · Aug 15, 2017 · 4198 views
    This topic created in 3220 days ago, the information mentioned may be changed or developed.

    如题,centos 6 系统,试了下升级到 2.7 以后, 以前装的很多软件都要重装才能用。

    换成 centos 7 的话,很多自己写的一键脚本又得重新写了

    29 replies    2017-08-16 18:03:07 +08:00
    sagaxu
        1
    sagaxu  
       Aug 15, 2017 via Android
    不要升级系统级的 Python
    holinhot
        2
    holinhot  
       Aug 15, 2017
    不用吧。我写了个脚本升级,好像没啥异常。
    #!/bin/bash
    yum install make gcc gcc-c++ git zlib* openssl openssl-devel make -y

    #version
    pyv='2.7.12'


    cd /tmp
    wget https://www.python.org/ftp/python/$pyv/Python-$pyv.tgz
    tar zxvf Python-$pyv.tgz
    cd Python-$pyv
    sed -i 's/#zlib zlibmodule.c/zlib zlibmodule.c/'g Modules/Setup.dist
    ./configure
    make all
    make install
    make clean
    make distclean

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

    sed -i 's#/usr/bin/python#/usr/bin/python2.6.6#g' /usr/bin/yum

    wget https://bootstrap.pypa.io/get-pip.py
    python get-pip.py

    rm -rf /tmp/zxvf Python-$pyv.tgz
    rm -rf /tmp/Python-$pyv
    rocksolid
        3
    rocksolid  
       Aug 15, 2017
    pyenv
    XiaoFaye
        4
    XiaoFaye  
       Aug 15, 2017
    我的经验是没事不要手贱去升级。。。
    wildcat007
        5
    wildcat007  
       Aug 15, 2017
    不要升级啊 自己脚本里面指定 python 路径呀
    比如

    #! /usr/bin/python2.7
    # coding=utf-8

    import xxxx
    brucedone
        6
    brucedone  
       Aug 15, 2017
    肯定不会去升级系统自带的,因为各种依赖,还不如装个虚拟环境,pyenv 或者 vitrual env .
    carlonelong
        7
    carlonelong  
       Aug 15, 2017
    还好不是 2.7 升到 3
    Buffer2Disk
        8
    Buffer2Disk  
    OP
       Aug 15, 2017
    @wildcat007 直接 down 源码下来编译安装会不会影响到 2.6 版本呐?
    Buffer2Disk
        9
    Buffer2Disk  
    OP
       Aug 15, 2017
    @holinhot 我试过这样升级后,原本装的 supervisor 就用不了了
    wizardoz
        10
    wizardoz  
       Aug 15, 2017
    为啥要升级?自己开发用的自己单独安装就好了。
    wildcat007
        11
    wildcat007  
       Aug 15, 2017
    @Buffer2Disk 不会的,你编译安装可以指定安装路径的,然后用上 virtulenv 会感觉 世界如此美好
    U7Q5tLAex2FI0o0g
        12
    U7Q5tLAex2FI0o0g  
       Aug 15, 2017
    年轻不懂事的时候曾经升过,然后悲剧了
    建议不要动系统的 python
    aaronzjw
        13
    aaronzjw  
       Aug 15, 2017 via Android
    你需要 anaconda
    ericgui
        14
    ericgui  
       Aug 15, 2017
    你应该升级的是 CentOS 的版本,而不是 python 的版本
    1runningbird
        15
    1runningbird  
       Aug 15, 2017
    我折腾过, 印象中是 yum 依赖于 python 2.6, 所以系统自带的 2.6 是不能被覆盖的。要不然很麻烦
    你需要自己手动安装 python2.7, 然后用 python2.7 安装 pip, 安装 virtualenv..........
    具体咋操作, 忘了.......
    dreamwar
        16
    dreamwar  
       Aug 15, 2017
    建议还是升级系统吧...
    douglas1997
        17
    douglas1997  
       Aug 15, 2017
    装个 anaconda 吧
    UnisandK
        18
    UnisandK  
       Aug 15, 2017
    yum install centos-release-SCL
    yum install python27
    scl enable python27 bash
    wlsnx
        19
    wlsnx  
       Aug 15, 2017
    直接装一个新的 python 就好了,不用动系统自带的
    ysicing
        20
    ysicing  
       Aug 15, 2017
    感觉 Debian 大法,至少没考虑 python 版本哈哈
    nosugar
        21
    nosugar  
       Aug 15, 2017
    装 py3,跟系统不冲突,自己脚本改改,PY3 是未来!
    syahd
        22
    syahd  
       Aug 15, 2017 via Android
    源码安装,不和系统的冲突就好。
    BOYPT
        23
    BOYPT  
       Aug 15, 2017
    configure --prefix 指定一个特别目录,比如 /opt/python27,不会影响系统的。
    NoAnyLove
        24
    NoAnyLove  
       Aug 15, 2017
    要么用 pyenv,要么不覆盖安装,用 make altinstall。推荐这篇文章: http://toomuchdata.com/2014/02/16/how-to-install-python-on-centos/
    janxin
        25
    janxin  
       Aug 15, 2017
    @ysicing 上 3.6.x 了吗?
    otakustay
        26
    otakustay  
       Aug 15, 2017
    什么,python 连小版本都有 breaking change ?
    lolizeppelin
        27
    lolizeppelin  
       Aug 15, 2017
    用兼容方法写代码, 2.6 2.7 的兼容还是比较简单的
    ysicing
        28
    ysicing  
       Aug 16, 2017
    @janxin 嗯全部搞到了 3.6.1
    ferstar
        29
    ferstar  
       Aug 16, 2017
    经验就是不要动系统级的 Python 版本,有需要上 virtualenv,pyenv,anaconda 都是很好的办法,互不影响
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5918 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 108ms · UTC 06:19 · PVG 14:19 · LAX 23:19 · JFK 02:19
    ♥ Do have faith in what you're doing.