亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python的Flask框架路由實(shí)現(xiàn)詳解

 更新時間:2023年08月09日 10:18:48   作者:晚風(fēng)吹兒  
這篇文章主要介紹了Python的Flask框架路由實(shí)現(xiàn)詳解,在啟動程序時,python解釋器會從上到下對代碼進(jìn)行解釋,當(dāng)遇到裝飾器時,會執(zhí)行,并把函數(shù)對應(yīng)的路由以字典的形式進(jìn)行存儲,當(dāng)請求到來時,即可根據(jù)路由查找對應(yīng)要執(zhí)行的函數(shù)方法,需要的朋友可以參考下

一、路由

通過URL訪問一個網(wǎng)頁,使用 route() 裝飾器把函數(shù)綁定到 URL

使用 route() 裝飾器把函數(shù)綁定URL示例:

from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
    return 'Index Page'
@app.route('/hello')
def hello():
    return 'Hello, World'
if __name__ == '__main__':
    app.run()

運(yùn)行flask后,可打開本地路徑進(jìn)行訪問

訪問路徑://127.0.0.1:5000/

在這里插入圖片描述

訪問路徑://127.0.0.1:5000/hello

在這里插入圖片描述

二、URL變量

1、變量規(guī)則

通過把 URL 的一部分標(biāo)記為 <variable_name> 就可以在 URL 中添加變量。標(biāo)記的部分會作為關(guān)鍵字參數(shù)傳遞給函數(shù)。通過使用 converter:variable_name ,可以選擇性的加上一個轉(zhuǎn)換器,為變量指定規(guī)則

from markupsafe import escape
from flask import Flask
app = Flask(__name__)
@app.route('/user/<username>')
def show_user_profile(username):
    # show the user profile for that user
    return f'User {escape(username)}'
@app.route('/post/<int:post_id>')
def show_post(post_id):
    # show the post with the given id, the id is an integer
    return f'Post {post_id}'
@app.route('/path/<path:subpath>')
def show_subpath(subpath):
    # show the subpath after /path/
    return f'Subpath {escape(subpath)}'
if __name__ == '__main__':
    app.run()

url支持的變量類型:

類型說明
string(缺省值) 接受任何不包含斜杠的文本
int接受正整數(shù)
float接受浮點(diǎn)數(shù)
path類似 string ,但可以包含斜杠
uuid接受 UUID 字符串

訪問路徑//127.0.0.1:5000/user/盤盤

在這里插入圖片描述

2、唯一的 URL / 重定向行為

代碼如下(示例):

@app.route('/projects/')
def projects():
    return 'The project page'
@app.route('/about')
def about():
    return 'The about page'

projects 的 URL 是中規(guī)中矩的,尾部有一個斜杠,看起來就如同一個文件夾。訪問一個沒有斜杠結(jié)尾的 URL ( /projects )時 Flask 會自動進(jìn)行重定向,自動在尾部加上一個斜杠( /projects/ )

about 的 URL 沒有尾部斜杠,因此其行為表現(xiàn)與一個文件類似。如果訪問這個 URL 時添加了尾部斜杠( /about/ )就會得到一個 404 “未找到” 錯誤。這樣可以保持 URL 唯一,并有助于搜索引擎重復(fù)索引同一頁面

3、URL 構(gòu)建

url_for() 函數(shù)用于構(gòu)建指定函數(shù)的 URL。 它把函數(shù)名稱作為第一個 參數(shù)。它可以接受任意個關(guān)鍵字參數(shù),每個關(guān)鍵字參數(shù)對應(yīng) URL 中的變量

from flask import url_for
app = Flask(__name__)
@app.route('/')
def index():
    return 'index'
@app.route('/login')
def login():
    return 'login'
@app.route('/user/<username>')
def profile(username):
    return f'{username}\'s profile'
with app.test_request_context():
    print(url_for('index'))
    print(url_for('login'))
    print(url_for('login', next='/'))
    print(url_for('profile', username='John Doe'))

輸出: 

/
/login
/login?next=/
/user/John%20Doe

到此這篇關(guān)于Python的Flask框架路由實(shí)現(xiàn)詳解的文章就介紹到這了,更多相關(guān)Flask 路由內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python中實(shí)現(xiàn)json數(shù)據(jù)和類對象相互轉(zhuǎn)化的四種方式

    python中實(shí)現(xiàn)json數(shù)據(jù)和類對象相互轉(zhuǎn)化的四種方式

    在日常的軟件測試過程中,測試數(shù)據(jù)的構(gòu)造是一個占比非常大的活動,對于測試數(shù)據(jù)的構(gòu)造,分為結(jié)構(gòu)化的數(shù)據(jù)構(gòu)造方式和非結(jié)構(gòu)化的數(shù)據(jù)構(gòu)造方式,此篇文章,會通過4種方式來展示json數(shù)據(jù)與python的類對象相互轉(zhuǎn)化,需要的朋友可以參考下
    2024-07-07
  • python 5個實(shí)用的技巧

    python 5個實(shí)用的技巧

    這篇文章主要介紹了python 5個實(shí)用的技巧,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-09-09
  • Python實(shí)現(xiàn)從線程獲取返回值

    Python實(shí)現(xiàn)從線程獲取返回值

    本文介紹了Python中線程的概念、創(chuàng)建線程的方法和在線程中獲取函數(shù)返回值的技巧,線程作為進(jìn)程中的執(zhí)行單元,可以實(shí)現(xiàn)程序的并發(fā)運(yùn)行,文章通過示例代碼展示了如何在Python中使用Thread類創(chuàng)建線程,并講解了在線程中傳遞參數(shù)和獲取返回值的方法
    2024-09-09
  • 用python介紹4種常用的單鏈表翻轉(zhuǎn)的方法小結(jié)

    用python介紹4種常用的單鏈表翻轉(zhuǎn)的方法小結(jié)

    這篇文章主要介紹了用python介紹4種常用的單鏈表翻轉(zhuǎn)的方法小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Python通過psd-tools解析PSD文件

    Python通過psd-tools解析PSD文件

    這篇文章主要介紹了Python通過psd-tools解析PSD文件,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下
    2022-06-06
  • Python實(shí)現(xiàn)對象轉(zhuǎn)換為xml的方法示例

    Python實(shí)現(xiàn)對象轉(zhuǎn)換為xml的方法示例

    這篇文章主要介紹了Python實(shí)現(xiàn)對象轉(zhuǎn)換為xml的方法,結(jié)合實(shí)例形式分析了Python對象屬性、節(jié)點(diǎn)的操作及與xml相互轉(zhuǎn)換的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-06-06
  • 以windows service方式運(yùn)行Python程序的方法

    以windows service方式運(yùn)行Python程序的方法

    這篇文章主要介紹了以windows service方式運(yùn)行Python程序的方法,可實(shí)現(xiàn)將Python程序變成windows服務(wù)的功能,需要的朋友可以參考下
    2015-06-06
  • Python根據(jù)過濾器拆分列表

    Python根據(jù)過濾器拆分列表

    這篇文章主要介紹了Python根據(jù)過濾器拆分列表,利用Python代碼實(shí)現(xiàn)代通過過濾器拆分列表的功能。文章圍繞其相關(guān)資料展開詳細(xì)內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • Django+Celery實(shí)現(xiàn)動態(tài)配置定時任務(wù)的方法示例

    Django+Celery實(shí)現(xiàn)動態(tài)配置定時任務(wù)的方法示例

    這篇文章主要介紹了Django + Celery 實(shí)現(xiàn)動態(tài)配置定時任務(wù)的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Python圖片視頻超分模型RealBasicVSR的使用教程

    Python圖片視頻超分模型RealBasicVSR的使用教程

    這篇文章主要和大家分享一個有意思的模型:RealBasicVSR。這個模型可以實(shí)現(xiàn)圖片或視頻的超分處理,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-05-05

最新評論