linux下配置python环境

1、linux下安装python3

a、 准备编译环境(环境如果不对的话,可能遇到各种问题,比如wget无法下载https链接的文件)

yum groupinstall 'Development Tools'
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel

2、下载 Python3.5代码包

在安装包中有一个README的文件,里面有写如何安装

tar Jxvf Python-3.5.0.tar.xz
cd Python-3.5.0
./configure --prefix=/usr/local/python3
make && make install

提示:Ignoring ensurepip failure: pip 7.1.2 requires SSL/TLS

这是原因没有安装或升级oenssl:

yum install openssl-devel

再次重复编译方案python3.5:

成功后会提示成功安装pip-7.12与setuptools!

pip3与pip都提示没有错误!

做软链:

ln -s /usr/local/python3/bin/pip3.5 /usr/local/bin/pip
升级pip到最新版本:

pip install --upgrade pip

pip安装成功啦!

注:--no-check-certificate 表示安装时“不检查证书”,不加上可能无法安装。

3、安装包

requests包:
pip install requests

pyquery包:
pip install pyquery

pymysql包:
pip install pymysql

4、如果机器中存在旧版本python,安装完成后,需要建立软连接和其它处理

4.1、将老版本改名
mv /usr/bin/python /usr/bin/python_old

4.2、建立新版本的链接
ln -s /usr/local/python3/bin/python3 /usr/bin/python

4.3、检查最新的python版本
python --version

5、安装django并创建helloworld项目

5.1、使用pip安装django
# pip install Django
或指定安装版本
# pip install Django==1.10.5

5.1、使用django创建hello项目
下面我们就来创建我们的HelloWorld项目,在你想保存项目代码的目录下执行
django-admin.py startproject hello

5.2、开启服务
# python hello/manage.py runserver 0.0.0.0:8090

打开网页访问:127.0.0.1:8090就会看到django默认页面
It worked!
Congratulations on your first Django-powered page.

Ps:
报错1:
bash: django-admin.py:command not found
解决办法:
找到django-admin.py,一般在/usr/local/python3/目录下,找到后添加软链
# ln -s /usr/local/python3/bin/python-admin.py /usr/local/bin/python-admin.py
查看软链是否添加成功
# cd /usr/local/bin
# ls -il

报错2:
$ yum
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
^
SyntaxError: invalid syntax

原因:
这是因为yum采用Python作为命令解释器,这可以从/usr/bin/yum文件中第一行#!/usr/bin/python发现。而python版本之间兼容性不太好,使得2.X版本与3.0版本之间存在语法不一致问题。而CentOS 5自带的yum采用的是python2.7,当系统将python升级到2.7或3.0后,出现语法解释错误。

解决办法:
很简单,一是升级yum,一是修改yum的解释器为旧版本python2.7(如果你没有采用覆盖升级的话)。
升级yum的作法就不详述了。修改yum的解释器为旧版本python2.7:
$ vi /usr/bin/yum
将第一行"#!/usr/bin/python" 改为 "#!/usr/bin/python2.7"即可。
# vi /usr/bin/yum
FROM:
#!/usr/bin/python
TO:
#!/usr/bin/python2.7

报错3:
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
^
SyntaxError: invalid syntax

原因:
同错误2原因

解决办法:
$ vi /usr/libexec/urlgrabber-ext-down
将第一行"#!/usr/bin/python" 改为 "#!/usr/bin/python2.7"即可。
# vi /usr/libexec/urlgrabber-ext-down
FROM:
#!/usr/bin/python
TO:
#!/usr/bin/python2.7

报错4:Django - No module named _sqlite3
解决:
1,首先安装 sqlite-devel
yum install sqlite-devel
2,重新编译安装Python
./configure --prefix=/usr/local/python3
make && make install

6、视图和 URL 配置。
在先前创建的 mysite 目录下,新建一个 views.py 文件,并键入代码:
from django import HttpResponse
def hello(request):
return HttpResponse("Hello world ! ")

接着,绑定 URL 与视图函数。打开 urls.py 文件,将代码修改为:

from django.conf.urls import url
from django.contrib import admin
from hello.views import helloworld

urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^hello/', helloworld),
]

完成后,启动 Django 开发服务器(一直将它运行着也是可以的。开发服务器会自动监测代码改动并自动重新载入,所以不需手动重启)。打开浏览器并访问:
http://127.0.0.1:8090/hello/
即可看到想要的输出:Hello world !