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

原创 2016年05月31日 14:15:17

安装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 venv\bin\active    #启用虚拟环境

然后在虚拟环境中用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也请参阅下一节。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

边做边学Python Flask Web开发(4)-- 使用Jinjia2模板(上)

概述Flask中我们通常使用Jinjia2模板语言来实现复杂的页面渲染,Jinja2 是一个现代的,设计者友好的,仿照 Django 模板的 Python 模板语言。 它速度快,被广泛使用,并且提供了...

边做边学Python Flask Web开发(5)-- 使用Jinjia2模板(中)

上一篇介绍了Jinjia2模板系统的基本用法,本篇将深入对Jinjia2进行探讨,对网页设计中经常会用到的一些高级特性进行介绍。模板复用复用是网页设计非常常用的特性,比如我们的页面头部的网站名称和页尾...

边做边学Python Flask Web开发(2)-- 使用VirtualEnv虚拟环境

使用VirtualEnv虚拟环境概述说VirtualEnv是Python的一大神器不足为过,如果你在生活中也有那么一点点的“洁癖”,相信你会喜欢上这个东西。我们知道使用Python的过程中会安装各种库...

边做边学Python Flask Web开发(3)-- Flask Hello World!

由于本系列教程叫做“边做边学”,因此我们在后续的讲解会以实践为主,穿插着介绍基本概念。请大家有条件的话跟着我们一起上机实践,而不要过于纠结深层次的原理,这些我们会在后续的教程中为大家慢慢解释。安装Fl...

Flask Web开发:Python

  • 2017-09-25 14:18
  • 10.44MB
  • 下载

Python进阶(五十三)-Flask Web开发实现将表单渲染成HTML

Python进阶(五十三)-Flask Web来发实现将表单渲染成HTML  在利用Flask进行Python Web开发时,页面中的wtf.quick_form(form)函数中的参数form是如何...

基于Python的Flask Web 开发 笔记 (1)

1)安装 $ pip install flask 2) 主要程序结构 from flask import Flask from flask import request ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)