Flask 需求

2021-08-10 10:59 更新

如果你想要在 Python 3 中使用 Flask,你需要安裝 Python 3.3 或更高的版本。 不支持 3.2 及更古老版本。

此外你需要使用最新且最大版本的 itsdangerousJinja2Werkzeug 。

API 穩(wěn)定性

Python 3 中做出的一些關(guān)于 Unicode 和 byte 的修改使得編寫底層 代碼變得困難。這主要影響 WSGI 中間件和與 WSGI 所提供信息的交互。Werkzeug 把所有 WSGI 信息封轉(zhuǎn)成高層的輔助函數(shù),但其中的一些是特地為 Python 3 支持而 新添加的。

很多關(guān)于 WSGI 使用的文檔是在 WSGI 升級至 Python 3 編寫的,未顧及這些細(xì)節(jié)。 雖然 Werkzeug 和 Flask 在 Python 2.x 中的 API 不會做出大改動,但我們不能保 證 Python 3 中不會發(fā)生。

少數(shù)派

根據(jù) PyPI 下載統(tǒng)計(jì),Python 3 用戶只有不足 Python 2 用戶的 1%。因此,你遭遇的 Python 3 特定的問題將很難在網(wǎng)上搜索到。

小生態(tài)系統(tǒng)

大多數(shù)的 Flask 擴(kuò)展、所有的文檔和絕大多數(shù) PyPI 提供的庫尚未支持 Python 3。 即使你在已知所有所需要的都支持 Python 3 的情況下開始項(xiàng)目,你也不知道接下來 的 6 個月發(fā)生什么。如果你富有冒險(xiǎn)精神,你可以開始自行移植那些庫,但意志薄弱者 則無計(jì)可施。

建議

除非你已經(jīng)熟悉各個版本的差異,否則,我們推薦在生態(tài)系統(tǒng)完善前,固守當(dāng)前版 本的 Python。

大多數(shù)升級的痛苦在于諸如 Flask 和 Werkzeug 這樣的底層庫,而非實(shí)際的高層應(yīng)用代碼中。 例如 Flask 代碼庫中所有的 Flask 實(shí)例無需修改一行代碼就可以在 2.x 和 3.x 中良好運(yùn)行。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號