首页 > 其他分享 >Flask快速入门1

Flask快速入门1

时间:2023-05-13 21:23:55浏览次数:29  
标签:return 入门 Flask route app 快速 hello def

  因为新换了一个工作,项目使用了Flask框架技术,需要快速学习下,学过Django这个重量级的框架基础后,再去学习Flask框架相对还是容易的。

当然入门基础容易,要深入理解还是要慢慢花时间深耕练习使用的。

 

Flask 入门知识点

一,Flask 环境
先安装好 python,再安装 Flask
pip install Flask

二,Flask 应用
Hello.py:

    from flask import Flask
    app = Flask(__name__)

    @app.route('/')
    def hello_world():
       return 'Hello World'

    if __name__ == '__main__':
       ''' Flask类的 app.run() 方法在本地开发服务器上运行应用程序
            app.run(host, port, debug, options)
        1    host  要监听的主机名。 默认为127.0.0.1(localhost)。设置为“0.0.0.0”以使服务器在外部可用
        2    port  默认值为5000
        3    debug 默认为false。 如果设置为true,则提供调试信息
        4    options 要转发到底层的Werkzeug服务器。
       '''
       #app.run()
       '''
        当应用程序正在开发中时,应该为代码中的每个更改手动重新启动它。为避免这种不便,请启用调试支持。
        如果代码更改,服务器将自行重新加载。它还将提供一个有用的调试器来跟踪应用程序中的错误。
        在运行或将调试参数传递给run()方法之前,通过将application对象的debug属性设置为True来启用Debug模式。
       '''
       app.run(port = 8000, debug = True)

启动Hello.py: python Hello.py ; 如下即为启动成功

 接着就可以打开浏览器,输入地址:http://127.0.0.1:8000 就能访问了,是不是相当快,Flask就是这么快速。

 

三,Flask 路由

    @app.route('/hello')
    def hello_world():
       return 'hello world'

 

四,Flask 变量规则

    @app.route('/hello/<name>')
    def hello_name(name):
       return 'Hello %s!' % name
    '''
    除了默认字符串变量部分之外,还可以使用以下转换器构建规则:
    1    int     整数
    2    float   浮点值
    3    path    接受用作目录分隔符的斜杠(/)
    '''
    @app.route('/blog/<int:postID>')
    def show_blog(postID):
       return 'Blog Number %d' % postID

    @app.route('/rev/<float:revNo>')
    def revision(revNo):
       return 'Revision Number %f' % revNo
       
    @app.route('/python/')
    def hello_python():
       return 'Hello Python'

 

五,Flask URL构建
url_for()函数对于动态构建特定函数的URL非常有用。
url_for()函数接受函数的名称作为第一个参数,以及一个或多个关键字参数,每个参数对应于URL的变量部分。

    @app.route('/admin')
    def hello_admin():
       return 'Hello Admin'

    @app.route('/guest/<guest>')
    def hello_guest(guest):
       return 'Hello %s as Guest' % guest

    @app.route('/user/<name>')
    def hello_user(name):
       if name =='admin':
          return redirect(url_for('hello_admin'))
       else:
          return redirect(url_for('hello_guest', guest = name))

 

标签:return,入门,Flask,route,app,快速,hello,def
From: https://www.cnblogs.com/xh2023/p/17398212.html

相关文章

  • 【技术分享】ROP技术入门教程
    【技术分享】ROP技术入门教程原文地址:https://ketansingh.net/Introduction-to-Return-Oriented-Programming-ROP/译文仅供参考,具体内容表达以及含义原文为准。 翻译:beswing预估稿费:200RMB投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 前言不可否认的是,不......
  • 如何快速查询某苹果产品的各种参数,配件参数
    今天出差,MacBookPro的充电头(专业术语叫电源适配器)忘带了,马上电脑就要没电了,所以打算买一个充电头,想买个跟原装适配器额定功率较为接近的,怕充坏了电脑,但是不知道原来的电源适配器功率是多少,进入到苹果官网,发现很快就找到了结果。操作步骤也适合各种苹果产品的参数搜索,所以记录一......
  • VSIX的入门练习:做一个TestFlow的ToolsWindow
    闲来无事,逛B站,发现了一个几乎没有人看的视频:【景尚科技】定义TestFlow文件_哔哩哔哩_bilibili 这个团队好牛啊,平均工作超过15年,博主也刚好工作15年,就也做一个TestFlow的界面。正好B站有教学视频:VisualStudio2022扩展开发入门/VSIX_哔哩哔哩_bilibili那就学习起来,做成的......
  • Grafana系列-统一展示-8-ElasticSearch日志快速搜索仪表板
    系列文章Grafana系列文章概述我们是基于这篇文章:Grafana系列文章(十二):如何使用Loki创建一个用于搜索日志的Grafana仪表板,创建一个类似的,但是基于ElasticSearch的日志快速搜索仪表板.最终完整效果如下:......
  • flask-4
    多对多常见业务:用户收藏文章/商品、用户与用户之间的好友关系、点赞、评论、关注、用户浏览商品的历史记录、订阅文章、专题/活动与商品/文章的关系。#有两种方式#1、非关系模型关系表[这种表,无法提供给python进行操作的,仅仅用于在数据库中记录两个模型之间的关系]studen......
  • 关于 Delphi 中流的使用 用 TMemoryStream(内存流) 入门
    所谓"流",就是一段数据或是一块内存;在进行流操作时,我们不必关心流中的数据到底是什么;只需要知道流的大小和当前的指针位置.所以流只有两个属性:Size、Position.对流的操作,不过就是读取和写入.所以流最主要的方法就是Read和Write.在很多控件的使用中,读取主要用Load......
  • PyQt入门之添加退出按钮,添加悬浮信息,图标
    importsysfromPyQt5.QtWidgetsimport*fromPyQt5.QtGuiimport*classMainWindow(QMainWindow):def__init__(self):super().__init__()#调用父类构造函数初始化self.setWindowTitle("第一个窗口")self.resize(500,500)screen......
  • vi基本入门操作,Ubuntu中vi方向键乱码问题解决方案?
    一、vi基本操作语法:vi+文本名例如创建一个名为text的文本文件进入后先敲击键盘"I"(看个人习惯,敲“a”也是一样的结果,大小写都行),进入插入模式,即可正常输入如果要敲错了内容,和Windows一样,用backspace来删除,也可以用delete键,问题在于用delete键只能删除选中部分的内容,且仅能选......
  • 28张图带你儿子入门C#
    ......
  • 矢量控制入门 如果你买了一堆学习资料,学习半年甚至更久了,
    矢量控制入门如果你买了一堆学习资料,学习半年甚至更久了,还不会写FOC,那不妨看看这里。首先声明,非开发版赠送的那类代码。程序全自主编写,结构清晰严谨,代码工整清爽,无任何穴余代码,无封包库,无TI宏模块,不使用IQmath库,注释率高,学会后,移植方便。另外,代码在产品上验证过,质量可靠,视频随便放......