当前位置: 首页 > news >正文

flask的第一个应用

本文编写一个简单的实例来记录下flask的使用

文章目录

  • 简单实例
  • flask中的路由
    • 无参形式
    • 有参形式
  • 参数类型
  • 本文小结


简单实例

flask的依赖包都安装好之后,我们就可以写一个最简单的web应用程序了,我们把这个应用程序命名为first.py:


from flask import Flaskapp = Flask(__name__)@app.route('/')
def first():return "<p>这是我的第一个flask程序!</p>"if __name__ == '__main__':app.run()

和普通的python程序不同的是,这里我们先实例化了一个Flask对象,然后用类似注解的方式定义了一个route在first这个方法上。

程序写好了,如果你在pycharm IDE中,那么可以右键运行,可以得到下面的内容:

 * Serving Flask app 'first'* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.* Running on http://127.0.0.1:5000
Press CTRL+C to quit
127.0.0.1 - - [29/Nov/2024 13:56:28] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [29/Nov/2024 13:56:29] "GET /favicon.ico HTTP/1.1" 404 -

最终我们可以访问默认的http://127.0.0.1:5000,可以得到下面的内容:

在这里插入图片描述


flask中的路由

无参形式

路由也叫Routing,它是web应用程序中的灵魂,通过路由来定义各种URL和访问路径。在flask中,可以使用@app.route来对路由进行定义。@app.route类似于注解,可以放置在python的方法之上。

route中可以定义路由的名称,路由的名称可以跟方法的名称不一样:

@app.route('/test')
def test():return '我是一个测试'

测试结果

在这里插入图片描述


有参形式

在实际使用过程中,可以从外部往程序中传递各种各样的参数,就需要使用到参数传递的形式。

程序实例

# 装饰器默认使用的请求方法是GET请求‌
# 装饰器的作用是将路由映射到视图函数index
@app.route('/hello/<path:username>')
def hello(username):print(username)return "<h1>"+username+"</h1>"

测试结果

在这里插入图片描述


参数类型

我们可以自行指定参数的类型,在flask中路径参数可以设置为下面的几种类型:


本文小结

本文编写了一个简单的实例来说明flask的基本使用,以及路由和不同的http方法。


http://www.mrgr.cn/news/79032.html

相关文章:

  • MySQL 高效批量删除海量数据策略解析
  • 【AI】Sklearn
  • 【N 卡 掉驱动 Driver 】NVML ERROR: Driver Not Loaded
  • C++:unordered_map与unordered_set详解
  • 前端request拦截器自定义参数时,后端允许跨域的拦截器要加上对应的自定义参数不然会引起访问跨域
  • Linux内核机制自学笔记
  • 浏览器渲染原理
  • 异常知识及其使用
  • 级联树结构TreeSelect和上级反查
  • mybatis-xml映射文件及mybatis动态sql
  • 嵌入式蓝桥杯学习1 点亮LED
  • 003-SpringBoot整合Pagehelper
  • C++学习笔记
  • springboot vue 会员收银系统 (12)购物车关联服务人员 订单计算提成 开源
  • 2.2 线性表的顺序表示
  • ultralytics-YOLOv11的目标检测解析
  • WPF+LibVLC开发播放器-LibVLC在C#中的使用
  • Python 入门教程(2)搭建环境 | 2.4、VSCode配置Node.js运行环境
  • 如何手搓一个智能激光逗猫棒
  • 当大的div中有六个小的div,上面三个下面三个,当外层div高变大的时候我希望里面的小的div的高也变大
  • C 语言 “神秘魔杖”—— 指针初相识,解锁编程魔法大门(一)
  • [docker中首次配置git环境与时间同步问题]
  • Spring Cloud Alibaba(六)
  • Java NIO channel
  • 【教学类-43-25】20241203 数独3宫格的所有可能-使用模版替换(12套样式,空1格-空8格,每套510张,共6120小图)
  • Bert+CRF的NER实战