最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2023年08月09日 10:18:48   作者:晚風(fēng)吹兒  
這篇文章主要介紹了Python的Flask框架路由實現(xiàn)詳解,在啟動程序時,python解釋器會從上到下對代碼進行解釋,當(dāng)遇到裝飾器時,會執(zhí)行,并把函數(shù)對應(yīng)的路由以字典的形式進行存儲,當(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()

運行flask后,可打開本地路徑進行訪問

訪問路徑://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接受浮點數(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 會自動進行重定向,自動在尾部加上一個斜杠( /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框架路由實現(xiàn)詳解的文章就介紹到這了,更多相關(guān)Flask 路由內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Django 自定義分頁器的實現(xiàn)代碼

    Django 自定義分頁器的實現(xiàn)代碼

    這篇文章主要介紹了Django 自定義分頁器的實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • 跟老齊學(xué)Python之傳說中的函數(shù)編寫條規(guī)

    跟老齊學(xué)Python之傳說中的函數(shù)編寫條規(guī)

    在使用函數(shù)的時候,首先要把它放在對象的層面考量,它不是什么特殊的東西,盡管我們使用了不少篇幅講述它,但它終歸還是一個對象。
    2014-10-10
  • python實現(xiàn)數(shù)據(jù)挖掘中分箱的示例代碼

    python實現(xiàn)數(shù)據(jù)挖掘中分箱的示例代碼

    數(shù)據(jù)分箱(英語:Data?binning)是一種數(shù)據(jù)預(yù)處理方法,用于最大限度地減少小觀測誤差的影響,本文主要為大家介紹了python實現(xiàn)數(shù)據(jù)分箱的相關(guān)知識,感興趣的可以了解下
    2024-01-01
  • Python中的可視化設(shè)計與UI界面實現(xiàn)

    Python中的可視化設(shè)計與UI界面實現(xiàn)

    本文介紹了如何使用Python創(chuàng)建用戶界面(UI),包括使用Tkinter、PyQt、Kivy等庫進行基本窗口、動態(tài)圖表和動畫效果的實現(xiàn),通過示例代碼,展示了如何利用這些庫來構(gòu)建功能強大且美觀的界面
    2025-01-01
  • Python爬取百度春節(jié)祝福語并生成心形詞云

    Python爬取百度春節(jié)祝福語并生成心形詞云

    這篇文章主要介紹了利用Python爬蟲爬取百度的春節(jié)祝福語,并將其生成心形詞云,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起試試
    2022-01-01
  • Python報錯ValueError:?cannot?convert?float?NaN?to?integer的解決方法

    Python報錯ValueError:?cannot?convert?float?NaN?to?intege

    在Python編程中,我們經(jīng)常需要處理各種數(shù)據(jù)類型,包括浮點數(shù)和整數(shù),然而,有時候我們可能會遇到一些意外的情況,比如將一個包含NaN(Not?a?Number)的浮點數(shù)轉(zhuǎn)換為整數(shù)時,就會拋出錯誤,本文將探討這個錯誤的原因,并給出幾種可能的解決方案,需要的朋友可以參考下
    2024-09-09
  • python使用pandas讀xlsx文件的實現(xiàn)

    python使用pandas讀xlsx文件的實現(xiàn)

    這篇文章主要介紹了python使用pandas讀xlsx文件的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Python實現(xiàn)消消樂小游戲

    Python實現(xiàn)消消樂小游戲

    本文主要介紹了Python實現(xiàn)消消樂小游戲,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Python實現(xiàn)圖片和base64轉(zhuǎn)換詳解

    Python實現(xiàn)圖片和base64轉(zhuǎn)換詳解

    這篇文章主要介紹了Python實現(xiàn)圖片和base64轉(zhuǎn)換詳解,Base64是一種二進制到文本的編碼方式,如果要更具體一點的話,可以認為它是一種將 byte數(shù)組編碼為字符串的方法,而且編碼出的字符串只包含ASCII基礎(chǔ)字符,需要的朋友可以參考下
    2024-01-01
  • Python+OpenCV讓電腦幫你玩微信跳一跳

    Python+OpenCV讓電腦幫你玩微信跳一跳

    這篇文章主要為大家詳細介紹了Python+OpenCV讓電腦幫你玩微信跳一跳,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01

最新評論

乌鲁木齐县| 大化| 蚌埠市| 安顺市| 壤塘县| 阿克苏市| 梅河口市| 新郑市| 保靖县| 周至县| 卢龙县| 乌兰察布市| 雷山县| 堆龙德庆县| 棋牌| 宁化县| 武强县| 陇西县| 宣汉县| 平度市| 闵行区| 玉龙| 榆中县| 济源市| 永吉县| 巴中市| 临汾市| 宜丰县| 皋兰县| 巴马| 金山区| 湖南省| 武山县| 永修县| 龙州县| 丹凤县| 富源县| 布拖县| 永顺县| 长沙市| 平湖市|