Python框架-Flask

时间:2025-01-20 09:41:10

介绍

Flask作为主流的框架之一,是每个程序员必不可少掌握的, 使用python语言基于Werkzeug工具箱编写的轻量级Web开发框架;本身相当于一个内核, 其他几乎所有的功能都要用到扩展;核心在于Werkzeug(路由模块), Jinja2模板引擎。相比于django,flask比较轻,轻不代表它的功能不够强大,而是它拥有丰富的扩展,依赖于扩展给应用添加功能

2.环境搭建

1.安装Flask和搭建虚拟环境

安装flask框架

pip install flask

flask的核心是Werkzeug和Jinja2,安装Flask的同时, 也会自动安装Werkzeug和Jinja2

为了防止与django环境冲突,可以安装虚拟环境将其分开

pip install virtualenvwrapper    # 安装虚拟环境

mkvirtualenv flask               # 创建名为flask的虚拟环境

workon flask                     # 激活虚拟环境

rmvirtualenv flask               # 删除虚拟环境

2.安装依赖

cmd进入文件所在位置, pip install -r 自动安装

alembic==1.7.6
aniso8601==9.0.1
APScheduler==3.9.1
async-timeout==4.0.2
==0.2.1
certifi==2021.10.8
cffi==1.15.0
charset-normalizer==2.0.12
click==7.1.2
cryptography==36.0.2
Deprecated==1.2.13
Flask==1.1.4
Flask-Cors==3.0.10
Flask-Migrate==2.7.0
Flask-MySQLdb==0.2.0
Flask-RESTful==0.3.9
Flask-Script==2.0.6
Flask-SQLAlchemy==2.5.1
greenlet==1.1.2
idna==3.3
importlib-metadata==4.8.2
importlib-resources==5.4.0
itsdangerous==1.1.0
Jinja2==2.11.3
Mako==1.1.6
MarkupSafe==2.0.1
mysqlclient==2.1.0
packaging==21.3
pycparser==2.21

PyMySQL==1.0.2
pyparsing==3.0.7
pytz==2021.3
pytz-deprecation-shim==0.1.0.post0
qiniu==7.6.0
redis==4.2.2
requests==2.27.1
ronglian-sms-sdk==1.0.0
six==1.16.0
SQLAlchemy==1.4.27
toml==0.10.2
typing-extensions==4.0.1
tzdata==2022.1
tzlocal==4.2
urllib3==1.26.9
Werkzeug==1.0.1
wrapt==1.14.0
zipp==3.6.0

3.基本流程

  1. 创建flaskAPP
  2. 定义视图函数
  3. 给视图定义路由
  4. 运行
from flask import Flask        # 导入Flask类

app = Flask(__name__)          # 实例化Flask类

@('/func')            # 编写视图函数及配置路由
def func():
    return '这是Flask框架'

if __name__ == '__main__':     # 启动服务
    ()

 以上就是一些简单的flask配置

4.优缺点

优点

  1. 框架轻量级,扩展性好
  2. 简洁,更新时依赖小
  3. 第三方库选择面广,可以根据开发时需要,也可以结合python库
  4. 配置灵活,有多种方法配置,不同环境配置也很方便
  5. 低耦合,可以兼容多种数据库,模板

缺点

  1. 对于大型网站开发,需要设计路由映射的规则,否则导致代码混乱