边做边学Python Flask Web开发(1)-- 安装Python - Go语言中文社区

边做边学Python Flask Web开发(1)-- 安装Python


安装Python开发环境

为了照顾从未接触过Python的小伙伴,先从怎样安装Python开发环境开始吧。

在Windows平台上安装Python

安装Python2.7

Python官方网站提供了Windows的二进制安装包,因此在Windows平台安装Python开发环境非常简单。第一步当然去www.python.org下载你需要的安装程序。

选择Python的版本非常重要,当前Python活跃的版本有两个,分别是2.7.x和3.5.x,由于Flask对2.7系列的Python支持较好,本系列教程以2.7为例,因此请大家下载2.7系列的安装程序,至于32位和64位则可以根据操作系统的类型选择,目前大部分主流操作系统均为64位的,如果你的机器比较老,或者实在不确定是什么架构,可以选择32位的安装程序。

这里写图片描述

安装Python和安装其它Windows程序没有什么区别,需要注意的是,在选择安装组件的过程中,应当把“注册环境变量”打上勾,这样安装程序会为你设置好Python运行所需要的环境变量,省去了人工设置的麻烦。

这里写图片描述

安装VC编译器

如果多了解一些Python的内部机制,你可能会知道现我们介绍的Python实际上是CPython,即Python的C语言实现,Python还有Java、.Net平台的实现,不在本文讨论的范围内。因此,在Python后续使用的过程中,安装一些库的时候不可避免地要对C代码进行编译,因此,建议同时安装好VC编译器,以免后续在安装支持库的时候出现不可预料的问题。微软为Python发布了一个专用的Visual C++ 编译程序。

在Linux平台上(CentOS6.5)上安装Python

大部分Linux系统均内置了Python运行环境,但是通常这些Python运行环境的版本比较旧,比如CentOS系统自带的Python版本是2.6.6,使用使用它们作为开发环境,可能会有不少潜在的坑和风险,所以推荐使用新版本的Python开发环境。想要在Linux系统中使用新版Python,通常我们需要从源码编译安装。

后续步骤均在CentOS 6.5环境中测试通过

准备工作

首先,你需要从www.python.org得到一份Python 2.7.11的源代码,网站提供了gzip,xz两种格式的压缩包,选择你熟悉的压缩包并下载下来,也可以使用下面的命令下载。

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

下载后把源代码解压到合适的位置。

tar zxf Python-2.7.11.tgz

在编译Python代码前,我们需要暂停一下做点其它准备工作:由于Python编译过程中会根据系统中的一些组件支持情况,选择性地编译一些系统支持功能,因此,如果想让自己编译的Python好用,需要安装这些系统组件的开发包。

#yum install zlib zlib-devel openssl openssl-devel sqlite sqlite-devel

从源码安装

完成上述步骤后,就可以开始Python的编译过程了,需要注意的是,如果你需要使用pyinstaller,那么需要启用一些Python的共享库,即配置时使用–enable-shared,我们按这种方式继续。

#./configure --enable-shared
#make install

下面描述的问题,不一定每个人都能遇到,但是因为我碰到了,所以记录下来供大家参考。

无法执行python命令

如果使用了–enable-shared参数,我在安装完毕后命令行输入python命令时,提示找不到库文件的错误:

# python
python: error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory

这时候可以使用ldd /usr/bin/python查看哪些库缺失:

# ldd /usr/local/bin/python
    linux-vdso.so.1 =>  (0x00007fff9168f000)
    libpython2.7.so.1.0 => not found   ## <<<这里提示缺少libpython2.7.so.1.0,可以使用find / -name xxx来查找到该库文件
    libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003a77000000)
    libdl.so.2 => /lib64/libdl.so.2 (0x0000003a76800000)
    libutil.so.1 => /lib64/libutil.so.1 (0x0000003a83800000)
    libm.so.6 => /lib64/libm.so.6 (0x0000003a77400000)
    libc.so.6 => /lib64/libc.so.6 (0x0000003a76c00000)
    /lib64/ld-linux-x86-64.so.2 (0x0000003a76400000)

然后使用下面的命令将相应库链接到/lib64目录中。
ln -s /usr/local/lib/libpython2.7.so.1.0 /lib64/

命令行输入python仍然是旧版本的

Python默认的安装位置在 /usr/local/bin/python2.7,可以分别在命令行输入python -V/usr/local/bin/python2.7 -V 来查看是否版本一致,如果版本不一致需要把旧的python版本换掉:

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

安装新版本python后,yum无法使用

换掉Python后,可能会出现yum无法使用的情况,这是因为yum使用的是旧版的python运行环境,这时需要修改一下yum的源代码。

***********
修改yum文件,不然yum没法使用
#vi /usr/bin/yum
将 #!/usr/bin/python 修改为 #!/usr/bin/python2.4
**********

安装常用工具

在后续的部署过程中,需要大量使用到pip等python工具,下面是安装方法。

安装pip

在安装pip前,需要安装setuptools工具包,将该工具包解压后,使用以下命令安装。
python setup.py install

安装pip步骤和setuptools一样,同样是运行python setup.py install

安装virtualenv

安装完pip后,可以使用pip install virtualenv安装virtualenv。安装完毕后,使用以下命令创建Python虚拟环境。

virtualenv venv           #创建虚拟环境
source venvbinactive    #启用虚拟环境

然后在虚拟环境中用pip安装所缺的包

问题汇总

安装setuptools的时候提示找不到zlib

原因是没有安装zlib-devel

#yum install zlib
#yum install zlib-devel

然后重新编译安装python(不需要删除,直接make install)

pip安装virtualenv时提示没法导入HTTPSHandler

原因是没有安装openssl-devel

#yum install openssl
#yum install openssl-devel

然后重新编译安装python。

下一节我们将介绍Virtualenv的使用。Windows中使用virutalenv也请参阅下一节。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/langkew/article/details/51545329
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-08 16:27:31
  • 阅读 ( 1216 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢