### 导航
- [索引](# "总目录")
- [下一页](# "升级到最新版本") |
- [上一页](# "Pocoo 风格指引") |
- [Flask 0.10.1 文档](#) »
# Python 3 支持
Flask 与其所有依赖包都支持 Python 3,所以理论上你已经可以在 Python 3 中工作了。尽管如此,在你开始为新项目采用 Python 3 之前,仍有一些事情应该了解。
### 需求
如果你想要在 Python 3 中使用 Flask,你需要安装 Python 3.3 或更高的版本。*不支持* 3.2 及更古老版本。
此外你需要使用最新且最大版本的 itsdangerous 、 Jinja2 和Werkzeug 。
### API 稳定性
Python 3 中做出的一些关于 Unicode 和 byte 的修改使得编写底层代码变得困难。这主要影响 WSGI 中间件和与 WSGI 所提供信息的交互。Werkzeug把所有 WSGI 信息封转成高层的辅助函数,但其中的一些是特地为 Python 3 支持而新添加的。
很多关于 WSGI 使用的文档是在 WSGI 升级至 Python 3 编写的,未顾及这些细节。虽然 Werkzeug 和 Flask 在 Python 2.x 中的 API 不会做出大改动,但我们不能保证 Python 3 中不会发生。
### 少数派
根据 PyPI 下载统计,Python 3 用户只有不足 Python 2 用户的 1%。因此,你遭遇的Python 3 特定的问题将很难在网上搜索到。
### 小生态系统
大多数的 Flask 扩展、所有的文档和绝大多数 PyPI 提供的库尚未支持 Python 3。即使你在已知所有所需要的都支持 Python 3 的情况下开始项目,你也不知道接下来的 6 个月发生什么。如果你富有冒险精神,你可以开始自行移植那些库,但意志薄弱者则无计可施。
### 建议
除非你已经熟悉各个版本的差异,否则,我们推荐在生态系统完善前,固守当前版本的 Python。
大多数升级的痛苦在于诸如 Flask 和 Werkzeug 这样的底层库,而非实际的高层应用代码中。例如 Flask 代码库中所有的 Flask 实例无需修改一行代码就可以在 2.x 和 3.x 中良好运行。
© 版权所有 2013, Armin Ronacher.
- 欢迎使用 Flask
- 前言
- 给有经验程序员的前言
- 安装
- 快速入门
- 教程
- 介绍 Flaskr
- 步骤 0: 创建文件夹
- 步骤 1: 数据库模式
- 步骤 2: 应用设置代码
- 步骤 3: 创建数据库
- 步骤 4: 请求数据库连接
- 步骤 5: 视图函数
- 步骤 6: 模板
- 步骤 7: 添加样式
- 福利: 应用测试
- 模板
- 测试 Flask 应用
- 记录应用错误
- 配置处理
- 信号
- 即插视图
- 应用上下文
- 请求上下文
- 用蓝图实现模块化的应用
- Flask 扩展
- 与 Shell 共舞
- Flask 代码模式
- 大型应用
- 应用程序的工厂函数
- 应用调度
- 使用 URL 处理器
- 部署和分发
- 使用 Fabric 部署
- 在 Flask 中使用 SQLite 3
- 在 Flask 中使用 SQLAlchemy
- 上传文件
- 缓存
- 视图装饰器
- 使用 WTForms 进行表单验证
- 模板继承
- 消息闪现
- 用 jQuery 实现 Ajax
- 自定义错误页面
- 延迟加载视图
- 在 Flask 中使用 MongoKit
- 添加 Favicon
- 数据流
- 延迟请求回调
- 添加 HTTP Method Overrides
- 请求内容校验码
- 基于 Celery 的后台任务
- 部署选择
- mod_wsgi (Apache)
- 独立 WSGI 容器
- uWSGI
- FastCGI
- CGI
- 聚沙成塔
- API
- JSON 支持
- Flask 中的设计决策
- HTML/XHTML 常见问题
- 安全注意事项
- Flask 中的 Unicode
- Flask 扩展开发
- Pocoo 风格指引
- Python 3 支持
- 升级到最新版本
- Flask Changelog
- 许可证
- 术语表