Python从2.6平滑升级2.7及安装

发布时间:2019-08-28 09:06:24编辑:auto阅读(2381)

    Python从2.6平滑升级2.7

    阿里云的默认配置是给服务器安装python 2.6.6版本,这个版本有点蛋疼,就是它已经不支持Django1.7。如果在2.6.6下默认安装Django的话,会安装上1.7版本,然后在启动的时候,就会显示如下的错误:

    >>> import django
    Traceback (most recent call last):
    File "", line 1, in 
    File "/usr/lib/python2.6/site-packages/django/__init__.py", line 1, in 
    from django.utils.version import get_version
    File "/usr/lib/python2.6/site-packages/django/utils/version.py", line 7, in 
    from django.utils.lru_cache import lru_cache
    File "/usr/lib/python2.6/site-packages/django/utils/lru_cache.py", line 28
    fasttypes = {int, str, frozenset, type(None)},
    ^
    SyntaxError: invalid syntax

    所以需要把机器内原来的python2.6升级成2.7,但是要注意,linux默认的yum路径是用原装的python,如果不注意这一点的话,就会出现python是2.7但是yum报错的现象,那就悲剧了。


    于是我们按照步骤一步一步来:

    1)下载2.7.8版本的python,很多人会说python3是未来的趋势,为啥不直接下python3,因为广大服务器安装都是2.x,用3的话,步子迈得有点大,会扯到蛋。

    # wget http://python.org/ftp/python/2.7.8/Python-2.7.8.tgz

    2)编译 and 安装

    # tar -zxvf Python-2.7.8.tgz

    # cd Python-2.7.8

    # ./configure --prefix=/usr/local/python27

    # make && make install

    3) 把原来2.6的python进行重命名,这一步是为了yum

    # mv /usr/bin/python /usr/bin/python_old 

    4)把2.7的python添加到linux的“快捷方式”

    # ln -s /usr/local/python27/bin/python /usr/bin/

    5)这个时间检查一下python

    Python 2.7.8 (default, Jul 16 2016, 10:38:06) 
    [GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>>

    6)把原来的yum的配置文件更改一下

    # vim /usr/bin/yum 

    之后把第一行由#!/usr/bin/python 改成 #!/usr/bin/python2.6,然后保存退出。

    7)这个时候检查一下yum,看一下是否正常。


    安装Django的过程

    个人比较推荐pip方法安装Django,简单粗暴易懂。


    #yum install python-pip

    #pip install --upgrade pip (这个是升级pip的命令)

    #pip install Django


    安装完毕之后,启动python,然后查看一下是否安装成功。

    [root@chen-cs-001 pip-1.2.1]# python
    Python 2.7.8 (default, Jul 16 2016, 10:38:06) 
    [GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import django
    >>> django.VERSION
    (1, 9, 7, 'final', 0)
    >>> django.get_version()
    '1.9.7'
    >>>  print (django.__path__)
    ['/usr/local/python27/lib/python2.7/site-packages/django']

    安装成功~OK!路径如上面所示~


    问题解决

    Q:当import django的时候出现下面的提示:importError: No module named utils.version

    A:可以先卸载了重新安装pip uninstall Django 然后, pip install Django 注意D大写,也可以试试 pip uninstall django 低版本的用的是 django这个名称。


    Q:系统自带python2.7,替换默认为python3,安装django后不能在python3中导入,2.7中可以导入,求解如何在3中导入

    A:

    #apt-get install python3-pip #(注意是python3 !)

    然后

    #pip3 install Django --user


    Q:

    SyntaxError: invalid syntax

    >>> django-admin startproject mysite

    File "", line 1

    django-admin startproject mysite

    A:需要把 Python目录下的 Scripts 也加入到环境变量目录


    Q:pip install Django提示ImportError: No module named pip

    A:

    #wget https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz
    #tar xzf pip-1.2.1.tar.gz
    #cd pip-1.2.1/
    #python setup.py install


    Q:启动pip安装的时候,提示ImportError: No module named pkg_resources

    A:

    wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
    tar zxvf setuptools-0.6c11.tar.gz
    cd setuptools-0.6c11
    python setup.py build
    python setup.py install



关键字