浅谈Python flask框架

 更新时间:2021年11月30日 10:08:40   作者:盆友圈的小可爱  
这篇文章主要介绍了Python flask框架,主要以对flask 微web框架优势特点、demo web应用程序程序步骤以及对flask模块中路由和模版两个功能进行基本了解。具有一定的参考价值,需要的朋友可以参考一下

 前言:

Python 面向对象的高级编程语言,以其语法简单、免费开源、免编译扩展性高,同时也可以嵌入到C/C++程序和丰富的第三方库,Python运用到大数据分析、人工智能、web后端等应用场景上。

Python 目前主要流行的web框架flaskDjangoTornado

那么框架与库的区别?

框架(framework)跟库的功能类似,但是框架在某一领域上功能更加全面。使用框架,会减少开发者重复造轮子,直接调用其类或者函数就可以实现需求的功能。

那么,我们本期来学习Python提供的 web 框架之一-flask框架相关方法的学习,Let's go~

1. flask 框架概述

flask 框架是一款基于 WSGI 的轻量级的web框架。flask 犹如耳熟能详的“麻雀虽小,五脏俱全”,因此flask具有简单可拓展的特点。

1.1flask 框架优势

  • 基于WSGI应用程序,必须使用显式实例化
  • 使用Werkzeug路由系统进行自动排序路由
  • 使用Jinja2模板引擎,快速方便使用模板
  • 使用线程局部变量,实现快速访问weby应用程序
  • 支持异步等待和ASCI(async-first)
  • 衔接单元测试,开发人员快速进行测试检查
  • 自带开发服务器,无需借助其他第三方网络服务

1.2flask 框架获取

使用pip进行下载flask

pip install flask

 flask 包下载之后,会自动下载依赖库

  • Werkzeug 库:实现WSGI,前端与服务端的Python接口
  • Jinjia 库:模板语言,显示web页面
  • MarkupSafe 库:附带Jinjia,用于转义渲染模板不受信任的输入
  • itsDangerous:保护flask会话的cookie
  • Click库:用于编写命令行框架

 flask 可选的依赖库,按实际需要进行下

  • Blinker 库:提供对Singals的支持
  • Python-dotenv 库:运行命令时启动dotenv的环境变量来支持flask
  • Watchdog 为flask服务器提供快速的加载器

1.3flask 框架使用

在代码中,使用from...import 导入flask包

from flask import flask

长按 Ctrl,我们可以查看Flask源代码介绍

2. flask demo步骤

在flask web 框架中,我们来看看要搭建一个DEMO的网站需要做哪些步骤:

初始化:导入Flask库,定义Flask实例化对象

  • Flask实例化时,需要传入__name__:目的是接收包或者模块的名字作为参数
  • flask.helpers.get_root_path以便获得静态文件和模板文件的目录
from flask import Flask

APP = Flask(__name__)

定义一个应用方法,并且route装饰器装饰

  • 调用route()方法装饰创建的应用方法:目的是告诉flask怎么访问该函数
@APP.route("/")

def hello():

    return ("<h1>welcome juejin</h1>")

在main中,flask实例化对象调用run()方法,进行运行

  • 如果在调试阶段,我们需要设置debug=True
if __name__ == "__main__":

    APP.run(debug=True)

后台运行日志链接

我们访问日志中生成的链,可以在网页上看到解析的文字

3. flask 基础功能

flask 上述实现的简易web程序,主要使用到啦flask模块路由功能

3.1路由功能

route()是装饰器,将URL和函数绑定

  • rule:绑定访问该函数的url规则
  • option:要转发给Rule对象的参数列表
@app.route(url,optiion)

  • run()是服务器上运行应用程序
  • host:监听的主机名
  • port:主机端口号
  • debug:提供调试信息
  • options:要转发给底层Werkzeug服务器

3.2模版提供

flask 框架是基于Jinja2模板引擎实现的

  • 在项目中创建一个子目录templates,然后在其目录下创建demo.html
  • 在flask文件中,应用方法中需要调用
render_template('demo.html', name=name)

4、总结

本期,我们对flask web框架优势特点、demo web应用程序程序步骤以及对flask模块中路由和模版两个功能进行基本了解。

到此这篇关于浅谈Python flask框架的文章就介绍到这了,更多相关Python flask框架内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python 根据pid杀死相应进程的方法

    python 根据pid杀死相应进程的方法

    下面小编就为大家带来一篇python 根据pid杀死相应进程的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • 基于Python实现ComicReaper漫画自动爬取脚本过程解析

    基于Python实现ComicReaper漫画自动爬取脚本过程解析

    这篇文章主要介绍了基于Python实现ComicReaper漫画自动爬取脚本过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Python自动化运维之IP地址处理模块详解

    Python自动化运维之IP地址处理模块详解

    IPy该模块可以方便的处理IPv4和IPv6地址,下面这篇文章主要给大家介绍了关于Python自动化运维之IP地址处理模块的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友下面来一起看看吧。
    2017-12-12
  • 灵活运用Python 枚举类来实现设计状态码信息

    灵活运用Python 枚举类来实现设计状态码信息

    在python中枚举是一种类(Enum,IntEnum),存放在enum模块中。枚举类型可以给一组标签赋予一组特定的值,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • python绘制散点图并标记序号的方法

    python绘制散点图并标记序号的方法

    今天小编就为大家分享一篇python绘制散点图并标记序号的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 酷! 程序员用Python带你玩转冲顶大会

    酷! 程序员用Python带你玩转冲顶大会

    程序员用Python玩转王思聪的《冲顶大会》,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • Tensorflow中tf.ConfigProto()的用法详解

    Tensorflow中tf.ConfigProto()的用法详解

    今天小编就为大家分享一篇Tensorflow中tf.ConfigProto()的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • python opencv 批量改变图片的尺寸大小的方法

    python opencv 批量改变图片的尺寸大小的方法

    这篇文章主要介绍了python opencv 批量改变图片的尺寸大小的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • Python解析网页源代码中的115网盘链接实例

    Python解析网页源代码中的115网盘链接实例

    这篇文章主要介绍了Python解析网页源代码中的115网盘链接实例,主要采用了正则表达式re模块来实现该功能,需要的朋友可以参考下
    2014-09-09
  • Django 项目重命名的实现步骤解析

    Django 项目重命名的实现步骤解析

    这篇文章主要介绍了Django 项目重命名的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08

最新评论