Python Flask框架


Python有很多Web框架,可謂是百家爭鳴,我這里列出幾個比較叼的幾個框架

  • Django      市場占有率最高,官方文檔幾近完美,但是適合比較大的項目,小項目會顯得累贅。
  • Tornado    可異步,性能高,提供更多的底層細節,還能進行Web Socket,但是和數據庫…..(大坑)
  • Web.py      小巧,精煉,擴展不是很多,而且問題是作者太牛掰,被上帝請去喝茶了。
  • Flask          年輕,2010年出現、可擴展、小巧、內置開發服務器和調試器、使用jinja2模板、完全兼容WSGI 1.0

flask框架安裝直接在pycharm里面下載就好,測試flask安裝成功后,開始以下:

Flask最最簡單的一個頁面

from flask import Flask # 導入包
 
app = Flask(__name__) # 創建一個Web應用
 
@app.route('/') # 定義路由(Views),可以理解為定義頁面的URL
def index(): 
    return "Hello World" # 渲染頁面
 
if __name__ == "__main__":
    app.run(host='127.0.0.1',port=8080) # 運行,指定監聽地址為 127.0.0.1:8080

結果如下:

 

點擊 進入網頁 可以看到 “Hello World”

開啟Debug調試

修改了代碼,我們需要將開啟的Web程序關閉再開啟,這樣會影響開發效率,也很煩。

Flask內部有一個功能,專門針對這樣的事情發生。

if __name__ == "__main__":
    app.run(host='127.0.0.1',port=8080,debug=True)

debug參數,這個參數默認是False

開啟這個功能后,我們每次修改完代碼,Web應用對自動進行調整。

現在修改代碼並且保存,應用就會自動更新你的代碼。

分析

 1 from flask import Flask  # 導入包
 2 
 3 app = Flask(__name__)  # 創建一個Web應用
 4 
 5 @app.route('/')  # 定義路由(Views),可以理解為定義頁面的URL
 6 def index():
 7     return "Hello World"  # 渲染頁面
 8 
 9 if __name__ == "__main__":
10     app.run(host='127.0.0.1', port=8080)  # 運行,指定監聽地址為 127.0.0.1:8080

第3行:Flask需要一個參數,這個參數通常是主模塊或是包的名字。所以通常會傳入 __name__

第5行:可以通過使用app.config類來修改配置,開啟調試模式。當然,這里所采用的方法只能適用於設置很少的時候,以后會介紹另外幾種修改配置的方法。

第7行: 還記得我之前提到了MVC嗎?這里就是其中V,就是路由。這里的代碼的目的就是為我們來指定一個路由,也就是頁面的地址。

第8 – 9行: 使用app.route()裝飾器會將URL和執行的視圖函數(函數 index )的關系保存在app.url_map屬性上。當你訪問指定的URL時,就會調用這個函數。當遇到第一個return時,就會結束。其中的return就是你的response

第12行: 執行app.run來啟動服務器。默認的Flask會監聽的地址是127.0.0.1:5000。我們指定host和port參數,就修改了監聽地址。 服務啟動后,會先判斷參數host以及port是否為None,如果為None,就會將host和port修改為默認值。然后會判斷debug。然后就會調用werkzeug.serving.run_simple來啟動Web服務,默認會使用單進程的werkzeug.serving_BaseWSGIServer來處理客戶端的請求。

還要注意的就是,這里的app.run的啟動方法,只適合在碼代碼的時候調試


轉載自:https://cuiqingcai.com/5888.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM