日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python输出等腰三角形代码_酷呆了!Python开发web应用的一些中级技巧

發布時間:2025/4/16 python 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python输出等腰三角形代码_酷呆了!Python开发web应用的一些中级技巧 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

上一篇文章,介紹了如何用python和flask來開發web應用,是不是覺得用python做web應用很簡單?

(1)URL如何傳遞參數?

(2)網頁如何重定向?

閱讀前,還是希望大家能告訴我,關于您和Python的熟練程度。

你的Python技能程度

網頁如何重定向?

用戶在訪問某個頁面的時候,我們希望他登錄后才能訪問該頁面,如果此時他沒有登錄,系統就讓瀏覽器由當前頁面跳轉到登錄頁面,這里就涉及頁面重定向問題。所謂頁面重定向,就是用戶在打開某個頁面的時候,我們期望頁面跳轉到另一個指定的頁面,讓用戶完成某種操作或執行某個動作。

Flask中提供了重定向函數redirect(),該函數的功能就是跳轉到指定的URL。下面在PyCharm中新建一名稱為2-4的工程。

例2-4 Flask頁面重定向:app.py


01 #endoding:utf-802 from flask import Flask,url_for,redirect #導入Flask和url_for及 redirect模塊03 app = Flask(__name__) #Flask初始化04 @app.route('/') #定義路由05 def hello_world(): #定義視圖函數06 print("首先訪問了index()這個視圖函數了!") #打印輸出07 url1=url_for('user_login') #URL反轉08 return redirect(url1) #網頁重定位09 @app.route('/user_login') #定義路由10 def user_login(): #定位視圖函數11 return "這是用戶登錄頁面,請您登錄,才能訪問首頁!" #返回值12 if __name__ == '__main__': 當模塊被直接運行時,代碼將被運行,當模塊是被導入 時,代碼不被執行13 app.run()

02行表示當模塊被直接運行時,代碼將被運行,當模塊被導入時,代碼不被執行;03行表示Flask初始化;04行定義路由;05行表示定義視圖函數;06行表示打印輸出;07行表示URL反轉;08行表示網頁重定位;09行表示定義路由;10行表示定位視圖函數;11行表示返回值;12行表示當模塊被直接運行時,代碼將被運行,當模塊被導入時,代碼不被執行。

重定向是將原本的URL重新定向成為一個新的URL,可以實現頁面的跳轉。Flask中使用到了redirect()函數,需要使用from flask import redirect將其導入才能使用。這里輸入地址訪問的首先應該是index()這個視圖函數,但是index()這個視圖函數直接跳轉到了user_login視圖上,運行結果如圖2.13所示。

圖2.13 URL重定向后網頁視圖和控制臺的輸出

URL傳遞參數

Flask中如果要傳遞一個變量或者一個參數,可以通過表單和地址欄兩種方式來傳遞。其中,通過瀏覽器地址欄URL方式傳遞/獲取某個變量或參數使用得比較多。這樣,我們可以使用相同的URL指定不同的參數,來訪問不同的內容。

Flask通過URL傳遞參數,傳遞參數的語法是:'//'。需要注意兩點:參數需要放在一對<>(尖括號)內;視圖函數中需要設置同URL中相同的參數名。

下面在PyCharm中新建一名稱為2-2的工程。

例2-2 URL傳遞參數:app.py


01 #encoding:utf-8 #指定編碼02 from flask import Flask #導入Flask模塊03 app = Flask(__name__) #Flask實例化04 @app.route('/') #定義路由05 def hello_world(): #定義視圖函數06 return '這是url傳參演示!' #返回值07 @app.route('/user/') #定義路由,傳遞的參數名是name,因此 需要在函數的形參中定義同名的參數08 return "接收到的名稱為: %s" % name #返回值09 if __name__ == '__main__': # 如果某模塊被直接運行,則其 __name__為'__main__'10 app.run(debug=True) #開啟調試模式

02行表示導入Flask模塊;03行表示Flask實例化;04行定義路由;05行定義視圖函數;06行是返回值;07行定義路由;08行表示返回值;09、10行表示如果某模塊被直接運行,則其__name__為'__main__',條件為真,就開啟調試模式。

注意: 在Python中,所有沒有縮進的代碼都會被執行,__name__是Python的內建函數,指的是當前模塊的名稱,每個模塊都有自己的__name__屬性,但__name__的值是會變化的,如果某模塊被直接運行,則其__name__為'__main__',條件為真,就可以執行app.run()方法,使得整個程序得以運行。當模塊被導入時,代碼不被運行。

如果07行代碼中name沒有指定數據類型,那么默認就是string數據類型。在瀏覽器的地址欄中輸入 http://127.0.0.1:5000/user/zhangsan ,回車后便可以得到如圖2.10所示的訪問結果。

如果此時在瀏覽器地址欄輸入的內容為 http://127.0.0.1:5000/USER/zhangsan ,回車后還可以得到如圖2.8所示結果嗎?結果顯然是否定的。因為這里的user是區分大小寫的。

在if__name__=='__main__':這行代碼之上繼續增加如下代碼:


@app.route('/news/')def list_news(id):

return"接收到的id為%s"%id

在瀏覽器地址欄輸入 http://127.0.0.1:5000/news/1 ,回車后便可以得到如圖2.11所示結果。

圖2.10 URL傳字符串變量

圖2.11 URL傳遞int型參數

如果在瀏覽器的地址欄輸入 http://127.0.0.1:5000/news/1.1 ,回車后還可以得到正確的結果嗎?結果顯然也是否定的。定義成int數據類型的URL只能傳遞int類型,定義成float數據類型時,URL只能傳遞float類型,即定義的是什么數據類型,URL傳遞的參數就必須為對應的數據類型。

請點擊獲取Python開發Web書籍

總結

以上是生活随笔為你收集整理的python输出等腰三角形代码_酷呆了!Python开发web应用的一些中级技巧的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。