• flaks框架学习:在 URL 中添加变量


    url标记为变量

    通过把 URL 的一部分标记为 就可以在 URL 中添加变量。标记的 部分会作为关键字参数传递给对应的视图函数

    通过使用 < converter:variable_name > ,可以选择性的加上一个转换器,为变量指定规则(就是指定变量的类型)

    看这个例子:

    from flask import Flask
    app = Flask(__name__)
    
    @app.route('/')
    def index():
        return 'index page'
    
    '''将url的一部分标记为变量,url:/languages/这部分作为变量
    作为关键字参数的形式 lang = value 传递到对应的视图函数中,lang=value
    '''
    @app.route('/languages/')
    def get_language(lang):
        return f'语言是:{lang}'
    
    if __name__ == '__main__':
        app.run()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    浏览器输入:
    在这里插入图片描述
    在这里插入图片描述
    可以看到url中的一部分就作为变量传递到了视图函数中。这里要注意一下,这部分的变量名必须全部一样。
    在这里插入图片描述

    指定变量的类型

    默认情况下,使用@app.route('/languages/')中的lang接收的参数类型都是string类型的,哪怕你输入的url是http://127.0.0.1:5000/languages/1,这里面的1是整数,但是lang接收到以后它就变成了string
    在这里插入图片描述
    在这里插入图片描述

    如果想要它变成整型,我们可以使用**< converter:variable_name >** , 选择性的加上一个转换器,为变量指定规则。
    转换器类型:
    在这里插入图片描述
    这里修改为< int: lang >:

    @app.route('/languages/')
    def get_language(lang):
        print(type(lang))
        return f'语言是:{lang}'
    
    • 1
    • 2
    • 3
    • 4

    这时候1的类型就变成了整型
    在这里插入图片描述
    还有一些其他的类型,比如path类型,可以使接收的参数中含有斜杠/,类似路径:

    @app.route('/num/')
    def get_pathStr(pathStr):
        return pathStr
    
    • 1
    • 2
    • 3

    在这里插入图片描述

  • 相关阅读:
    实战 | 基于卷积神经网络的蘑菇识别微信小程序
    4D 语义分割——SpSequenceNet
    最新ChatGPT/GPT4科研应用与AI绘图及论文高效写作
    nginx反向代理与负载均衡
    视频批量剪辑:AI智剪入门,轻松掌握智能剪辑技巧
    社区版MyApps低代码平台,免费即刻拥有!
    python快速实现简易超级玛丽小游戏
    SQL注入初了解
    iOS 17.4 Not Installed
    闭包的理解
  • 原文地址:https://blog.csdn.net/weixin_42576837/article/details/126145385