Flask学习(一):flask程序入口(hello world)

Flask安装: pip install flask

创建第一个Flask程序:

python 复制代码
# 导入flask
from flask import Flask
​
# 创建flask实例 app
app = Flask(__name__)
​
# 通过装饰器的形式设置路由
# 路由装饰器将一个视图函数与一个 URL 路径关联起来。当访问该 URL 时,Flask 会调用与之关联的视图函数。
@app.route("/index")
def index():
    return'Hello World'
​
if __name__ == "__main__":
    # 执行app.run 本质是执行了run_simple('localhost',4000,hello)
    app.run()

run函数源码:

python 复制代码
# 定义参数的类型及相关默认值
def run(
    self,
    host: str | None = None,
    port: int | None = None,
    debug: bool | None = None,
    load_dotenv: bool = True,
    **options: t.Any,
) -> None: # python3.5及以后添加的功能(->None)用于指定函数参数和返回值的预期类型,虽然这些类型在运行时不会强制执行,但可以帮助开发者和其他阅读代码的人更好地理解代码的预期行为。
    
    ......
​
    from werkzeug.serving import run_simple
    # 其run函数本质执行的是run_simple
    try:
        # t.cast(str, host) 将host转换成str类型
        run_simple(t.cast(str, host), port, self, **options)
    finally:
        self._got_first_request = False
相关推荐
charlie11451419144 分钟前
从 0 开始:在 WSL + VSCode 上利用 Maven 构建 Java Spring Boot 工程
java·笔记·vscode·后端·学习·maven·springboot
e***74954 小时前
Spring Security 官网文档学习
java·学习·spring
FL171713144 小时前
Pytorch保存pt和pkl
人工智能·pytorch·python
爱学习的小道长6 小时前
进程、线程、协程三者的区别和联系
python·ubuntu
L-李俊漩6 小时前
MMN-MnnLlmChat 启动顺序解析
开发语言·python·mnn
大雷神7 小时前
HarmonyOS 横竖屏切换与响应式布局实战指南
python·深度学习·harmonyos
山河亦问安7 小时前
Spring原理编码学习
java·学习·spring
钅日 勿 XiName7 小时前
一小时速通pytorch之训练分类器(四)(完结)
人工智能·pytorch·python
青瓷程序设计7 小时前
水果识别系统【最新版】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
思成不止于此7 小时前
【C++ 数据结构】二叉搜索树:原理、实现与核心操作全解析
开发语言·数据结构·c++·笔记·学习·搜索二叉树·c++40周年