关于找到支持py3k的Python Web框架的建议?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了关于找到支持py3k的Python Web框架的建议?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2562字,纯文字阅读大概需要4分钟。
内容图文
![关于找到支持py3k的Python Web框架的建议?](/upload/InfoBanner/zyjiaocheng/723/6d803afb1b6e46c18df6e277ac9d9a28.jpg)
从一个月前开始学习Python,我发现这种语言简单实用.
我是一名Web开发人员,但我只有PHP经验,我使用过像CakePHP或Zend这样的框架.我熟悉最受欢迎的Django.但是,Django与Python 3不兼容.
有人知道支持Python 3的Python Web框架吗?我应该考虑使用纯Python,没有框架吗?如果是个好主意,我应该使用哪个网络服务器? Nginx和uwsgi或Gunicorn这样的反向代理,为什么?
解决方法:
最新的Django稳定版本是1.5,它确实支持Python 3.请阅读公告:https://docs.djangoproject.com/en/dev/topics/python3/
Django 1.5是支持Python 3的Django的第一个版本,所以你可以期待比以前的版本更多的bug,这些版本在Python 2支持方面非常扎实.但Django核心团队非常认真地考虑合并来自社区的补丁,所以它不应该是一个太大的交易.
通常,您有三个非常着名的Python Web框架:Flask,Bottle和Pyramid.前两个是针对极简主义的. Bottle只是一个Python文件.我可以肯定地说,通过添加路由功能,Bottle只是WSGI服务器上的一个包装器.这就是它.如果您想要最少的功能,请使用Bottle,并从头开始构建所有内容.这通常适用于非常轻量级的API Web服务.
Flask是新的着名老兄.它比瓶子重,但仍然极简主义.金字塔通常是Django的直接竞争对手.金字塔没有ORM或硬集成模板引擎.默认情况下,您可以使用Mako或Chameleon构建前端模板.没有ORM意味着您不仅限于关系数据库. Django的ORM是对象关系映射器,因此它绑定到像MySQL,PostgreSQL或MariaDB或其他RDMB这样的关系数据库.如果你想使用非关系型(NoSQL)的MongoDB,那你几乎就是搞砸了.你不能从使用Django的ORM中受益. Pyramid允许您使用SQLAlchemy或其他ODM(NoSQL的对象文档映射器)而不是Django中的硬集成ORM.
此时使用Python 3与任何Python Web框架的问题在于,大多数Python Web框架生态系统(无论是Django的生态系统,Flask的,Pyramid的)都与Python 3不兼容.许多最受欢迎的Django应用程序都没有声称支持Python 3,所以如果你想使用这些应用程序来构建你的Django网站,你将会失败.
但是在1.5中我认为生态系统将迅速转向兼容Python 3的支持.
如果您对Python足够熟悉,请查看Flask或Pyramid.我喜欢金字塔,因为它附带了您可以采用的Auth政策.我们一直在使用Pyramid来构建我们的web api服务.如果你建立一个前端,Django是好的.我仍然会将我的API网络服务留在Pyramid或Flask中.
通常,您应该避免使用Apache mod_wsgi.大多数人不知道如何调整Apache以有效运行.默认情况下,Nginx将为您提供高吞吐量和高效的工作CPU内存消耗.是.我推荐使用Gunicorn.
你是什??么意思纯Python?所有Web框架都是使用Python构建的.好吧,我可以得到一些细节,大多数人使用的Python称为CPython.还有其他Python实现. Python语言的实现可以是C,C,Java,Ruby,.NET甚至PHP. CPython是C.为了让你感到困惑,有一个Python编程语言“PyPy”的实现,它在Python中实现了Python语言.
好的.让我说完一点:那可能不是你所指的.如果您想自己构建一个Web框架,那很好.您只需要了解WSGI如何工作,让一个正则表达式中间件根据URL调度请求到视图函数,然后就完成了.这真的是所有现代Python Web框架的需求.上个学期我写了一个假人(虽然可怕).
内容总结
以上是互联网集市为您收集整理的关于找到支持py3k的Python Web框架的建议?全部内容,希望文章能够帮你解决关于找到支持py3k的Python Web框架的建议?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。