Python2代码部署到Python3-填坑日志

因业务需求做了一个小功能,开发环境使用的是:tornado

Python 环境为 2.7

部署到linux centos 6.5 时候发现线上的Python环境为2.6

然后就各种报错,在本地使用Python3编译完之后,竟然好使,可能是虚拟环境已经配置过了,我靠;

思路如下:

    升级linux系统的Python环境

    更新软链

    安装pip

    更新pip软链

    升级Python2的代码为Python3语法

    成功

Python3 环境安装:

    安装Python3

    wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz

    tar -zxf Python-3.6.4.tgz

    cd Python-3.6.4

    ./configure --enable-optimizations --prefix=/usr/bin/python3.6.4

    make && make install

    python --version



    安装:setuptools

    wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26

    tar -zxvf setuptools-19.6.tar.gz

    cd setuptools-19.6

    sudo python setup.py build

    sudo python setup.py install



安装pip:

    wget --no-check-certificate  https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb

    tar -zxvf pip-8.0.2.tar.gz

    cd pip-8.0.2

    python get-pip.py

    更新-:pip install --upgrade pip



更新Python软链:

    ln -s /usr/{你的Python3.6安装目录}/python3 /usr/bin/python

更新PIP软链:

    ln -s /usr/{你的Python3.6安装目录}/pip /usr/bin/pip

    if(pip软链不好使)

    {

            hash -r  #清空缓存列表

    }

到此线上Python3的环境就已经安装成功了



我这里只描述我遇到的Python2和Python3代码中的差异

Python2中 :MySQLdb  Python3中用:pymysql  代替

Python2中 :(一直报这行错误,找了半天发现两个版本语法不同)

    except

Python3中用: 

    except ZeroDivisionError as err:

           print ('Exception: ', err)

Python2中:print  ‘输出’

Python3中用:print ('Exception: ')

如上就是我遇到的几个问题,希望对你有用,祝好。

你可能感兴趣的:(Python2代码部署到Python3-填坑日志)