Python Flask自定義URL路由參數(shù)過濾器的方法詳解
簡單的例子
先看一個簡單的例子,GET請求需要傳遞一個參數(shù),我們直接獲取的是字符串
from flask import Flask
app = Flask(__name__)
@app.get("/<value>")
def index(value):
return str(2 == value)
if __name__ == "__main__":
app.run()
手動類型轉(zhuǎn)換
需要獲取數(shù)值,需要進(jìn)行類型轉(zhuǎn)換
from flask import Flask
app = Flask(__name__)
@app.get("/<value>")
def index(value):
# return str(2 == value)
return str(2 == int(value))
if __name__ == "__main__":
app.run()
GET http://127.0.0.1:5000/2 True
自動類型轉(zhuǎn)換
Flask提供了內(nèi)置的類型過濾器,可以直接轉(zhuǎn)換成我們需要的類型,就不需要手動進(jìn)行類型轉(zhuǎn)換了
from flask import Flask
app = Flask(__name__)
@app.get("/<int:value>")
def index(value):
# return str(2 == int(value))
return str(2 == value)
if __name__ == "__main__":
app.run()
GET http://127.0.0.1:5000/2 True
支持的過濾類型
string: 默認(rèn)的數(shù)據(jù)類型,接收沒有任何斜杠"\ /"的字符串
int: 整型
float: 浮點型
path: 和string類型相似,但是接受斜杠,如:可以接受參數(shù)/aa/bb/cc/多條放在一起
uuid: 只接受uuid格式的字符串字符串,
自定義路由過濾器
繼承BaseConverter類,實現(xiàn)兩個轉(zhuǎn)換方法即可
from flask import Flask, url_for
from werkzeug.routing import BaseConverter
app = Flask(__name__)
# 定義轉(zhuǎn)換器
class ListConverter(BaseConverter):
def to_python(self, value):
"""解析url參數(shù)"""
return value.split(',')
def to_url(self, value):
"""轉(zhuǎn)為url參數(shù)"""
return ','.join(value)
# 注冊
app.url_map.converters['list'] = ListConverter
@app.get("/<list:value>")
def index(value):
print(url_for('index', value=['a', 'b', 'c']))
# 輸出:/a,b,c
return str(value)
if __name__ == "__main__":
app.run()
GET http://127.0.0.1:5000/1,2,3 ['1', '2', '3']
到此這篇關(guān)于Python Flask自定義URL路由參數(shù)過濾器的方法詳解的文章就介紹到這了,更多相關(guān)Flask自定義URL路由參數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python企業(yè)編碼生成系統(tǒng)之主程序模塊設(shè)計詳解
這篇文章主要介紹了Python企業(yè)編碼生成系統(tǒng)之主程序模塊設(shè)計,包括初始化、界面與邏輯實現(xiàn)相關(guān)操作技巧,需要的朋友可以參考下2019-07-07
Python+wxPython打造一個網(wǎng)頁圖片一鍵下載神器(附完整源碼)
這篇文章主要為大家詳細(xì)介紹了如何使用Python和wxPython打造一個網(wǎng)頁圖片一鍵下載神器,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下2025-11-11
Python實現(xiàn)打印九九乘法表的不同方法總結(jié)
這篇文章主要為大家介紹了Python實現(xiàn)打印九九乘法表的幾種不同方法,文中的示例代碼講解詳細(xì),簡潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-11-11
conda將python低版本環(huán)境升級到高版本的完整步驟
這篇文章主要給大家介紹了關(guān)于conda將python低版本環(huán)境升級到高版本的完整步驟,包括激活環(huán)境、升級Python版本、驗證升級、處理依賴問題和測試環(huán)境等步驟,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-04-04

