中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Python項目中安裝Flask環境

發布時間:2021-03-02 17:26:36 來源:億速云 閱讀:291 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關怎么在Python項目中安裝Flask環境,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

安裝環境

使用虛擬環境安裝Flask,可以避免包的混亂和版本的沖突,虛擬環境是Python解釋器的副本,在虛擬環境中你可以安裝擴展包,為每個程序單獨創建的虛擬環境,可以保證程序只能訪問虛擬環境中的包。而不會影響系統中安裝的全局Python解釋器,從而保證全局解釋器的整潔。

虛擬環境使用virtualenv創建,可以查看系統是否安裝了virtualenv:

$ virtualenv --version

安裝虛擬環境(須在聯網狀態下)

$ sudo pip install virtualenv
$ sudo pip install virtualenvwrapper

創建虛擬環境(ubuntu里須在聯網狀態下)

$ mkvirtualenv Flask_py

進入虛擬環境

$ workon Flask_py

退出虛擬環境

如果所在環境為真實環境,會提示deactivate:未找到命令

$ deactivate Flask_py

安裝Flask

指定Flask版本安裝

$ pip install flask==0.10.1

Mac系統:

$ easy_install flask==0.10.1

在ipython中測試安裝是否成功

$ from flask import Flask

Flask程序運行過程:

所有Flask程序必須有一個程序實例。

Flask調用視圖函數后,會將視圖函數的返回值作為響應的內容,返回給客戶端。一般情況下,響應內容主要是字符串和狀態碼。

當客戶端想要獲取資源時,一般會通過瀏覽器發起HTTP請求。此時,Web服務器使用WSGI(Web Server Gateway Interface)協議,把來自客戶端的所有請求都交給Flask程序實例,程序實例使用Werkzeug來做路由分發(URL請求和視圖函數之間的對應關系)。根據每個URL請求,找到具體的視圖函數。 在Flask程序中,路由的實現一般是通過程序實例的裝飾器實現。通過調用視圖函數,獲取到數據后,把數據傳入HTML模板文件中,模板引擎負責渲染HTTP響應數據,然后由Flask返回響應數據給瀏覽器,最后瀏覽器處理返回的結果顯示給客戶端。

示例:

# 導入Flask類
from flask import Flask
#Flask函數接收一個參數__name__,它會指向程序所在的模塊
app = Flask(__name__)
# 裝飾器的作用是將路由映射到視圖函數index
@app.route('/')
def index():
  return 'Hello World'
# Flask應用程序實例的run方法啟動WEB服務器
if __name__ == '__main__':
  app.run()

給路由傳參示例:

有時我們需要將同一類URL映射到同一個視圖函數處理,比如:使用同一個視圖函數 來顯示不同用戶的個人信息。

# 路由傳遞的參數默認當做string處理,這里指定int,尖括號中的內容是動態的
@app.route('/user/<int:id>')
def hello_itcast(id):
  return 'hello itcast %d' %id

返回狀態碼示例:

return后面可以自主定義狀態碼(即使這個狀態碼不存在)。當客戶端的請求已經處理完成,由視圖函數決定返回給客戶端一個狀態碼,告知客戶端這次請求的處理結果。

@app.route('/')
def hello_itcast():
  return 'hello itcast',999

abort函數:

如果在視圖函數執行過程中,出現了異常錯誤,我們可以使用abort函數立即終止視圖函數的執行。通過abort函數,可以向前端返回一個http標準中存在的錯誤狀態碼,表示出現的錯誤信息。

使用abort拋出一個http標準中不存在的自定義的狀態碼,沒有實際意義。如果abort函數被觸發,其后面的語句將不會執行。其類似于python中raise。

from flask import Flask,abort
@app.route('/')
def hello_itcast():
  abort(404)
  return 'hello itcast',999

重定向redirect示例

from flask import redirect
@app.route('/')
def hello_itcast():
  return redirect('http://www.baidu.com')

正則URL示例:

from flask import Flask
from werkzeug.routing import BaseConverter
class Regex_url(BaseConverter):
  def __init__(self,url_map,*args):
    super(Regex_url,self).__init__(url_map)
    self.regex = args[0]
app = Flask(__name__)
app.url_map.converters['re'] = Regex_url
@app.route('/user/<re("[a-z]{3}"):id>')
def hello_itcast(id):
  return 'hello %s' %id

設置cookie和獲取cookie

from flask import Flask,make_response
@app.route('/cookie')
def set_cookie():
  resp = make_response('this is to set cookie')
  resp.set_cookie('username', 'itcast')
  return resp
from flask import Flask,request
#獲取cookie
@app.route('/request')
def resp_cookie():
  resp = request.cookies.get('username')
  return resp

以上就是怎么在Python項目中安裝Flask環境,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

崇明县| 桦南县| 秭归县| 墨竹工卡县| 进贤县| 平阳县| 黄骅市| 玉树县| 会同县| 乌审旗| 南阳市| 浪卡子县| 宜阳县| 墨脱县| 双鸭山市| 井研县| 区。| 克山县| 来安县| 郸城县| 砚山县| 新乐市| 中阳县| 奈曼旗| 千阳县| 桂平市| 郓城县| 宾阳县| 定襄县| 六枝特区| 格尔木市| 江达县| 上蔡县| 汾西县| 永昌县| 东乡族自治县| 辛集市| 什邡市| 临朐县| 芮城县| 新乡县|