打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
[Flask Web开发]学习一:安装和基本结构

简单了解Flask

Flask属于小型Web开发框架,只要熟练使用,读懂它的源码都不是问题。

麻雀虽小五脏俱全,flask由一个核心(Werkzeug和Jinjia2)+可扩展特性组成,让使用者完全可以根据自身需求构建出属于自己的一个架构。核心都是由Flask的核心开发者开发。

对于一个完整的系统架构来说,与数据库的交互是必不可少的。可惜,目前的Flask并不原生支持数据库访问、Web表单验证和用户认证等高级功能。这些功能以及其它大多数Web程序中需要的核心服务都以扩展的形式实现,然后再与核心包集成。这个和大型框架的思路相反,大框架往往都已替你规划好了各种功能的实现方式,难以甚至不能自定义。

安装和使用Flask

安装Flask最便捷的方式是使用虚拟环境。虚拟环境是Python解释器的一个私有副本,在这个环境中你可以安装私有包,且不影响系统中安装的全局Python解释器。

虚拟环境非常有用,可避免包的混乱和版本的冲突。为每个程序单独创建虚拟环境可以保证程序只访问虚拟环境中的包,从而保持全局解释器的干净、整洁。另外,使用虚拟环境还不需要管理员权限。

虚拟环境是通过第三方工具virtualenv创建,可通过命令virtualenv --version查看是否成功安装:

C:\Users\Jochen>virtualenv --version

16.6.1

python 3.3通过venv模块原生支持虚拟环境,命令为pyvenv。pyvenv可以替代virtualenv。不要要注意的是,Python3.3中使用pyvenv命令创建的虚拟环境不包括php,你需要手动安装pip。Python3.4改进了这一缺陷,pyvenv完全可以替代virtualenv.

大多数Linux发行版都提供了virtualenv包。例如,Ubuntu用户可以使用下述命令安装它:

$sudo apt-get install python-virtualenv

对于Mac OS X系统,可通过easy_install安装virtualenv:

$sudo easy_install virtualenv

如果你使用微软的Windows系统或者其它没有官方virtualenv包的操作系统,那么安装过程会复杂一点。

在浏览器中输入网址https://bitbucket.org/pypa/setuptools,回车后会进入setuptool安装程序的主页。在这个页面中找到下载安装脚本的链接,脚本名称为ez_setuppy。把这个文件保持到电脑的一个临时文件中,然后在这个文件夹中执行以下命令:

$python ez_setup.py

$easy_install virtualenv

上述命令必须以具有管理员权限的用户身份执行。在微软Windows系统中,请使用“以管理员身份运行”选项打开命令行窗口;在基于Unix的系统中,要在上面的两个命令前加上sudo,或者以根用户(root)身份执行。一旦安装完成,virtualenv实用工具就可以从常规账号中调用。

笔者这里在自己电脑(windows系统)的f盘根目录创建了一个名为flask的文件夹,然后打开cmd命令提示符,切换到创建的文件夹中

C:\Users\Jochen>cd /d f:\flask

f:\flask>

接下来使用virtualenv命令在flask文件夹中创建Python虚拟环境。这个命令只有一个必须的参数,即虚拟环境的名字。创建虚拟环境后,当前文件夹中会出现一个子文件夹,名字就是上述命令中指定的参数,与虚拟环境相关的文件都保存在这个子文件夹中。按照惯例,一般虚拟环境会被命名为venv:

F:\flask>virtualenv venv

Using base prefix 'd:\\program files\\python\\stackless37'

New python executable in F:\flask\venv\Scripts\python.exe

Installing setuptools, pip, wheel...

done.

现在,flask文件夹中就有了一个名为venv的子文件夹,它保存一个全新的虚拟环境,其中有一个私有地Python解释器。在使用这个虚拟环境之前,你需要先将其“激活”。如果你使用的bash命令行(Linux和Mac OS X用户),可以通过下面的命令激活这个虚拟环境:

$source venv/bin/active

如果使用微软Windows系统,激活命令是:

$venv\Scripts\activate

虚拟环境被激活后,其中Python解释器的路径就被添加进PATH中,但这种改变不是永久性的,它只会影响当前的命令行会话。为了提醒你已经激活虚拟环境,激活虚拟环境的命令会修改命令行提示符,加入环境名:

(venv) F:\flask>

当虚拟环境中的工作完成后,如果你想回到全局Python解释器中,可以在命令行提示符下输入deactivate。

使用pip安装Python包

大多数Python包都使用pip实用工具安装,使用virtualenv创建虚拟环境时会自动安装pip。激活虚拟环境后,pip所在的路径会被添加进PATH。

如果你在Python 3.3中使用pyvenv创建虚拟环境,那就需要手动安装pip。安装方法参加pip的网址(https://pip.pypa.io/en/latest/installing.html)。在Python 3.4中,pyvenv会自动安装pip。

执行下述命令可在虚拟环境中安装Flask:


(venv) F:\flask>pip install flask

Collecting flask

  Using cached Flask-1.1.1-py2.py3-none-any.whl (94 kB)

Collecting Werkzeug>=0.15

  Downloading Werkzeug-1.0.0-py2.py3-none-any.whl (298 kB)

     |████████████████████████████████| 298 kB 34 kB/s

Collecting itsdangerous>=0.24

  Using cached itsdangerous-1.1.0-py2.py3-none-any.whl (16 kB)

Collecting click>=5.1

  Downloading click-7.1.1-py2.py3-none-any.whl (82 kB)

     |████████████████████████████████| 82 kB 4.4 kB/s

Collecting Jinja2>=2.10.1

  Downloading Jinja2-2.11.1-py2.py3-none-any.whl (126 kB)

     |████████████████████████████████| 126 kB 5.0 kB/s

Collecting MarkupSafe>=0.23

  Using cached MarkupSafe-1.1.1-cp37-cp37m-win_amd64.whl (16 kB)

Installing collected packages: Werkzeug, itsdangerous, click, MarkupSafe, Jinja2, flask

Successfully installed Jinja2-2.11.1 MarkupSafe-1.1.1 Werkzeug-1.0.0 click-7.1.1 flask-1.1.1 itsdangerous-1.1.0


看到上述安装输出信息没有中断,且提示Successfully installed说明flask和其依赖的组件(包)已安装完成。通过pip list可以看到安装了哪些组件:

(venv) f:\flask>pip list

Package      Version

------------ -------

click        7.1.1

Flask        1.1.1

itsdangerous 1.1.0

Jinja2       2.11.1

MarkupSafe   1.1.1

pip          20.0.2

setuptools   46.0.0

Werkzeug     1.0.0

wheel        0.34.2

其中,pip、setuptools、wheel环境自带的,其它的都是安装flask时一并安装的。可以看到,安装flask的同时也安装了Werkzeug和Jinja2,后边的开发将会围绕这两个组件展开。

想要验证是否正确安装,可以启动Python解释器,尝试导入Flask:

(venv) F:\flask>python

Python 3.7.3 Stackless 3.7 (v3.7.3-slp:4a7e31953c, Apr  8 2019, 23:19:38) [MSC v.1916 64 bit (AMD64)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>>

>>> import flask

>>>

如果没有看到任何错误输出,说明Flask的开发环境已经部署完成,接下来可以学习如何开发第一个Web程序了。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
从零开始用 Flask 搭建一个网站(一)
Windows 10 搭建 Flask
Python虚拟环境
Python虚拟环境virtualenv使用说明
【编程课堂】同一台电脑,不同的 Python
使用flask uwsgi supervised 使用虚拟python环境搭建网站
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服