首页 > 其他分享 >Flask框架基础介绍

Flask框架基础介绍

时间:2024-03-13 09:30:45浏览次数:25  
标签:name 框架 Flask app 应用程序 介绍 模板 路由

Flask 是一个轻量级的 Python Web 应用框架,它简单而灵活,适用于快速开发 Web 应用程序。Flask 基于 Werkzeug WSGI 工具箱和 Jinja2 模板引擎构建,提供了简单易用的方式来构建 Web 应用程序和 RESTful API。以下为 Flask 框架的基础知识和常用用法。

1、安装 Flask

在开始之前,首先需要安装 Flask。可以使用 pip 工具来安装 Flask:
pip install flask
安装完成后,你就可以开始使用 Flask 来构建 Web 应用程序了。2、编写你的第一个 Flask 应用程序
下面是一个简单的 "Hello, World!" Flask 应用程序示例:

from flask import Flask

# 创建 Flask 应用程序实例
app = Flask(__name__)

# 定义路由和视图函数
@app.route('/')
def hello():
    return 'Hello, World!'

# 启动 Flask 应用程序
if __name__ == '__main__':
    app.run(debug=True)

保存上述代码为 app.py 文件,然后在命令行中执行以下命令启动 Flask 应用程序:

python app.py

Flask 将在本地启动一个开发服务器,并监听默认的 http://127.0.0.1:5000 地址。在浏览器中打开该地址,你将看到 "Hello, World!" 的消息。

2、Flask 路由


Flask 使用路由来映射 URL 到视图函数。在上面的示例中,@app.route('/') 装饰器定义了根 URL / 对应的视图函数 hello()。当访问根 URL 时,将调用 hello() 函数并返回 "Hello, World!" 消息。

3、动态路由

除了静态路由外,Flask 还支持动态路由。动态路由允许将 URL 中的一部分作为参数传递给视图函数。例如:

@app.route('/user/<username>')
def show_user_profile(username):
    return f'User: {username}'

在上述示例中,/user/<username> 定义了一个动态路由,其中 <username> 部分表示变量。当访问 /user/john 时,show_user_profile() 函数将被调用,并且 username 参数将设置为 'john'。

4、模板渲染

Flask 使用 Jinja2 模板引擎来渲染动态内容。模板可以包含变量、控制结构和过滤器,使得生成动态内容变得简单而灵活。例如:

from flask import render_template

@app.route('/hello/<name>')
def hello_name(name):
    return render_template('hello.html', name=name)

在上述示例中,render_template() 函数用来渲染名为 hello.html 的模板,并将 name 参数传递给模板以生成动态内容。

5、静态文件

Flask 允许在应用程序中提供静态文件,如 CSS、JavaScript 和图像。默认情况下,Flask 将从 static 文件夹中提供静态文件。例如,可以将 CSS 文件放置在 static/css 文件夹下,并通过以下方式在模板中引用:

html
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/style.css') }}">



以上介绍了 Python Flask 框架的基础知识和常用用法,包括安装 Flask、编写第一个应用程序、定义路由、动态路由、模板渲染和静态文件提供等。Flask 提供了简单而灵活的方式来构建 Web 应用程序,适用于各种规模的项目和需求。后续会通过一个开发实例,来继续加深flask各模块的使用。

标签:name,框架,Flask,app,应用程序,介绍,模板,路由
From: https://blog.csdn.net/vincent0920/article/details/136642510

相关文章

  • ruoyi框架学习笔记(二)
    三、通知公告发布流程搭建3.1功能策划在第一篇学习笔记中已经将“通知公告”拆分为两个部分,分别为全部公告:主要是实现查看所有用户已经走完发布流程且是发布状态的公告;我的公告:实现当前用户新建公告、发起审批流程并发布公告的编辑位置;在笔记一中已经实现上述两个部分的前......
  • Locust 介绍与特性
    一Locust的介绍现在不管是互联网行业还是传统行业,对性能的要求,都日渐增多,为了能更快更准确的定位问题,发现问题,以及解决问题,市面上出现了越来越多的性能测试工具,例如Jmeter,LoadRunner,Locus,而今天,我们主要介绍就是Locust,locust官网如下:https://www.locust.io简介:先从`......
  • 【C++】string类(介绍、常用接口)
    ......
  • 12VMWare虚拟机设置页介绍
    VMWare虚拟机设置页介绍我们可以对VM里安装的虚拟机进行个性化设置,向其中添加,修改,删除硬件.点击菜单栏上的虚拟机(M),点击设置(S).内存内存越大,虚拟机运行速度越快.但是需要量力而行,相应的,虚拟机获得的内存越大,你的物理机所剩内存越小.处理器不用进行设置.硬盘......
  • UI自动化测试介绍及入门
    为了让对自动化技术感兴趣的朋友们有真实案例的支持,今天我们给大家带来一期适合新手的UI自动化测试介绍。我们的目标是让大家能够轻松理解UI自动化测试的概念,并且能够亲自动手去实践。通过这个介绍,大家能够对UI自动化测试有一个整体的理解,并且能够自己动手去做。项目的选取:虽然U......
  • 探索Flutter中的模糊毛玻璃滤镜效果:ImageFilter介绍使用和深入解析
    在Flutter中,模糊效果不仅可以增加应用的视觉吸引力,还可以用于多种场景,如背景模糊、图像处理等。通过BackdropFilter和ImageFilter.blur,Flutter使得添加和调整模糊效果变得异常简单。本文将深入探讨如何在Flutter中实现动态模糊效果,并通过TileMode参数调整模糊效果的边缘行为......
  • 深入理解 Nginx:原理和基础介绍
    简介Nginx(发音为"engine-x")是一个高性能的开源Web服务器,它也可以用作反向代理服务器、负载均衡器、HTTP缓存以及作为邮件代理服务器。它的灵活性、高性能和可扩展性使其成为许多互联网公司和网站的首选服务器软件。本文将介绍Nginx的原理、基础知识以及其在互联网架构中的......
  • 探索PyTorch:介绍及常用工具包展示
    前言PyTorch作为一个强大的开源深度学习框架,近年来在科学计算和人工智能领域备受欢迎。它提供了灵活的张量计算和动态计算图的功能,使得构建和训练深度神经网络变得更加简单和高效。本文将介绍PyTorch的基本概念,并展示一些常用的PyTorch工具包,帮助读者更好地了解和利用PyTorch进......
  • 基于Vue(提供Vue2/Vue3版本)和.Net Core前后端分离、跨平台的快速开发框架
    前言今天大姚给大家推荐一款基于Vue(提供Vue2/Vue3版本)和.NetCore前后端分离、开源免费(MITLicense)、强大、跨平台的快速开发框架,并且框架内置代码生成器(解决重复性工作,提高开发效率),支持移动端(iOS/Android/H5/微信小程序):Vue.NetCore。提高开发生产效率、避免996可以考虑试试这......
  • 叮!请查收昇思人工智能框架峰会2024邀请函
    昇思MindSpore人工智能框架峰会,北京国家会议中心,2024年3月21闭门会议,3月22日主论坛和开发者嘉年华,人工智能产学研用专家齐聚,诚邀各位开发者参加~~......