python Flask 写一个简易的 web 端程序(附demo)
创始人
2025-01-16 14:34:09
0

python Flask 写一个简易的 web 端程序 (附demo)

  • 介绍
  • 简单
    • 介绍装饰器 @app.route("/")
  • 进阶
    • 增加接口
    • 设置端口
  • 静态网页
      • 核心代码
      • 完整代码


介绍

Flask 是一个用于构建 Web 应用程序的轻量级 Python Web 框架。它设计简单、易于学习和使用,但同时也非常灵活,适用于从小型项目到大型应用程序的各种场景。

特点和概念描述
轻量级Flask 是一个轻量级框架,没有强制性的依赖关系,允许开发者自由选择和集成其他库。
路由使用装饰器来定义 URL 路由,将不同的 URL 映射到相应的处理函数上。
模板引擎集成 Jinja2 模板引擎,允许在 HTML 中嵌套 Python 代码,方便动态内容的渲染。
Web 表单提供简单而灵活的方式来处理 Web 表单,可以使用 Flask-WTF 等扩展简化表单的验证和处理。
扩展性提供丰富的扩展库,允许开发者集成数据库、身份验证、缓存等功能,根据项目需求进行选择和定制。
RESTful 支持对 RESTful 风格的 API 提供良好支持,结合 Flask-RESTful 等扩展可以轻松构建 RESTful API。
WSGI 兼容符合 WSGI 标准,可以在大多数支持 WSGI 的 Web 服务器上运行。

简单

确保已经安装了Flask。如果还没有安装,可以通过以下命令进行安装(控制台命令安装):

pip install Flask  

在这里插入图片描述

介绍装饰器 @app.route(“/”)

@app.route("/") 是 Flask 中用于定义路由的装饰器。它用于将一个 URL 路径映射到一个特定的视图函数,使得在访问特定路径时能够执行相应的操作。

我先写一个最简单的案例。如下面代码:

from flask import Flask  app = Flask(__name__)   @app.route('/') def index_hello():     return "你好,我是首页"   if __name__ == '__main__':     app.run()  

app.run() 这是 Flask 应用程序对象 (app) 的方法,用于启动 Web 服务器以提供应用服务。

在这里插入图片描述

效果
在这里插入图片描述

进阶

增加接口

同理,如果我们要写一个接口也可以使用装饰器来进行如下面

from flask import Flask  app = Flask(__name__)   @app.route('/') def index():     return "你好,我是首页"   @app.route('/get_type') def get_type():     return ["语文", "数学"]   if __name__ == '__main__':     app.run()  

在这里插入图片描述

在这里插入图片描述

设置端口

from flask import Flask  app = Flask(__name__)   @app.route('/') def index():     return "你好,我是首页"   @app.route('/get_type') def get_type():     return ["语文", "数学"]   if __name__ == '__main__':     app.run(host='0.0.0.0', port=9680)  

app.run(host='0.0.0.0', port=9680) 是用于启动 Flask 应用程序的方法。它指定了应用程序监听的主机地址和端口号。

  • host='0.0.0.0' 这个参数指定了服务器监听的网络接口。在这里,0.0.0.0 表示服务器将会监听所有可用的网络接口,即对外开放。这允许通过网络访问应用程序,而不仅仅是通过本地机器。如果指定为 localhost127.0.0.1,则只能通过本地访问。

  • port=9680 这个参数指定了服务器监听的端口号。在这里,设置为 9680,表示应用程序将在该端口上接收传入的 HTTP 请求。

参数名类型默认值描述
hoststr | NoneNone指定服务器监听的主机地址。如果为 None,则服务器只能通过本地访问。如果为 ‘0.0.0.0’,则服务器将监听所有可用的网络接口,对外开放。
portint | NoneNone指定服务器监听的端口号。如果为 None,则使用默认端口号(通常是 5000)。可以设置为任何合适的整数,如 8080 或 9680。
debugbool | NoneNone用于启用或禁用调试模式。如果为 True,则启用调试模式,提供更详细的错误信息和自动重新加载应用程序。默认为 None,根据应用程序是否处于调试模式自动设置。
load_dotenvboolTrue指定是否加载 .env 文件中的环境变量。默认为 True,表示 Flask 将尝试从 .env 文件加载环境变量。

在这里插入图片描述
在这里插入图片描述

静态网页

在前面代码的基础上,我们去增加目录 templates 并调整代码:

核心代码

@app.route('/') def index():     return render_template('index.html') 

Flask.render_template 是 Flask 框架中用于渲染模板的方法。这个方法使得应用程序中使用模板引擎将动态数据嵌入到静态 HTML 页面中,以生成最终的用户界面。

完整代码

文件:main.py

from flask import Flask, render_template  app = Flask(__name__)   @app.route('/') def index():     return render_template('index.html')   @app.route('/get_type') def get_type():     return ["语文", "数学"]   if __name__ == '__main__':     app.run(host='0.0.0.0', port=9680)  

文件 index.html

                  首页    我是首页,首页内容    

在这里插入图片描述

在这里插入图片描述

相关内容

热门资讯

推荐一款!兴动互娱辅助工具(辅... 推荐一款!兴动互娱辅助工具(辅助挂)一直有开挂辅助神器(有挂教学);人气非常高,ai更新快且高清可以...
科技通报!新上游反杀微信辅助,... 您好,随意玩辅助器视频有挂这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩...
玩家必看秘籍!白金岛放炮罚作弊... 玩家必看秘籍!白金岛放炮罚作弊码(辅助挂)一直有开挂辅助平台(详细教程)1、打开软件启动之后找到中间...
每日必备!微信小程序微乐挂如何... 每日必备!微信小程序微乐挂如何获取,雀神广东麻将提高胜率,透视教程(有挂解密);相信小伙伴都知道这个...
一分钟了解!科乐填大坑破解游戏... 一分钟了解!科乐填大坑破解游戏(辅助挂)好像有开挂辅助软件(详细教程);科乐填大坑破解游戏软件透明挂...
重大来袭!花花生活圈第三方工具... 重大来袭!花花生活圈第三方工具(辅助挂)总是有开挂辅助脚本(有挂细节)1、很好的工具软件,可以解锁游...
盘点几款!小程序财神十三张脚本... 盘点几款!小程序财神十三张脚本,越乡游义乌辅助器安全吗,教你教程(有挂猫腻);盘点几款!小程序财神十...
透视app!微乐贵阳捉鸡麻将辅... 透视app!微乐贵阳捉鸡麻将辅助,广东雀神智能插件安装测试,我来教教你(有挂秘诀);小薇(透视辅助)...
实测交流!吉林心悦有挂吗(辅助... 实测交流!吉林心悦有挂吗(辅助挂)素来有开挂辅助工具(证实有挂);1、完成吉林心悦有挂吗的残局,帮助...
透视存在!闲聚鱼虾蟹软件脚本(... 透视存在!闲聚鱼虾蟹软件脚本(辅助挂)其实有开挂辅助脚本(讲解有挂)1、很好的工具软件,可以解锁游戏...