flask

安装:pip install flask

检查版本:

复制代码
import importlib.metadata
print(importlib.metadata.version("flask"))  

hello word:

复制代码
from flask import Flask
app = Flask(__name__)
@app.route('/')  
def hello_world():  
    return 'Helllo World'
if __name__ == '__main__':
    app.run()

简单的wsigi应用

复制代码
""" 简单WSGI服务器实现 """
from wsgiref.simple_server import make_server


# make_server 函数是 wsgiref 模块中提供的用于创建 WSGI 服务器的函数


def main():  # main 函数用于启动服务器
    # 创建一个 WSGI 服务器实例,并将其赋值给变量 server。
    # 指定服务器的主机名为 'localhost',端口号为 8001,处理请求的 WSGI 应用程序为 hello_world 函数。
    server = make_server('localhost', 8001, hello_world)
    print('Serving HTTP on port8001...')
    # 阻塞调用,使得服务器一直运行,直到接收到停止服务器的信号
    server.serve_forever()


def hello_world(environ, start_response):  # 作为 WSGI 应用程序。environ 是包含请求信息的字典,start_response 是用于发送响应的回调函数。
    status = "200 OK"
    response_headers = [('Content-Type', 'text/html')]  # 表示响应头部分的 Content-Type 属性为 'text/html'
    start_response(status, response_headers)
    path = environ['PATH_INFO'][1:] or 'hello world'
    return [b'<h1> %s </h1>' % path.encode()]   # 构建一个包含 HTML 标签的响应内容,并将其作为字节类型的列表返回


if __name__ == '__main__':
    main()



项目模式

debug模式

if name == 'main':

app.run(debug=True)

设置host和port

复制代码
app.run(host='0.0.0.0', port=5000)

app.config模式

app.config['配置项名称'] = 值

Flask 变量规则

<variable>: 使用尖括号包围的变量名称,表示该部分 URL 是一个变量。这个变量将作为参数传递给视图函数,默认情况下是字符串类型。

<int:variable>: 表示该变量应该是一个整数。Flask 会自动将匹配到的字符串转换为整数,并传递给视图函数。

<float:variable>: 表示该变量应该是一个浮点数。

<path:variable>: 将匹配任何路径,包括斜杠。这个规则常用于捕获完整的 URL 路径。

<string(length=2):variable>: 使用 string 转换器可以限制变量的类型为字符串,并且可以指定长度限制,例如 <string(length=2):variable> 表示该变量应该是一个长度为 2 的字符串。

<any(值1, 值2, ...):variable>: 使用 any 转换器可以限制变量只能是指定列表中的某个值,例如 <any('admin', 'user'):variable> 表示该变量只能是 'admin' 或 'user'。

相关推荐
全栈前端老曹4 分钟前
【Redis】Redis 客户端连接与编程实践——Python/Java/Node.js 连接 Redis、实现计数器、缓存接口
前端·数据库·redis·python·缓存·全栈
人道领域13 分钟前
SSM框架从入门到入土(RESTful风格)
后端·restful
野犬寒鸦14 分钟前
WebSocket协同编辑:高性能Disruptor架构揭秘及项目中的实战应用
java·开发语言·数据库·redis·后端
橙露18 分钟前
排序算法可视化:用 Java 实现冒泡、快排与归并排序的对比分析
java·python·排序算法
AntBlack21 分钟前
上下求索,2025年我用AI写了哪些东西
后端·ai编程·年终总结
喵手24 分钟前
Python爬虫实战:构建全球节假日数据库 - requests+lxml 实战时区节假日网站采集(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·构建全球节假日数据库·采集时区节假日数据·采集节假日sqlite存储
galaxyffang26 分钟前
A2A协议的简单应用
python·ai
一晌小贪欢28 分钟前
Python在物联网(IoT)中的应用:从边缘计算到云端数据处理
开发语言·人工智能·python·物联网·边缘计算
好家伙VCC32 分钟前
# 发散创新:基于Solidity的DeFi协议设计与实现——从原理到实战代码解析在区块链世界中,**DeFi(去中心化金
java·python·去中心化·区块链
墨染青竹梦悠然35 分钟前
基于SpringBoot + vue的农产品销售系统(华夏鲜仓)
vue.js·spring boot·python·django·毕业设计·毕设