python web开发用啥框架
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python web开发用啥框架相关的知识,希望对你有一定的参考价值。
1、Django框架Django是一个开放源代码的Web 应用框架,由纯Python写成,是目前 Python 语言中主流 de 三大Web框架之一(flask、django、tornado),是最容易上手的框架。
2、Flask框架
flask框架是python中的一个轻量级的前后端开发框架,不同于Django,flask只提供基础的功能,其他的功能需要安装各种插件。因为轻量,所以可以用来做一些小工程和低流量的开发;大型工程也可以使用flask框架,但是就需要安装很多插件。
3、Pyramind框架
Pyramind是一个扩展性很强且灵活的 Python Web 开发框架。上手十分容易,比较适合中等规模且边开发边设计的场景。Pyramid 不提供绝对严格的框架定义,根据需求可以扩展开发,对高阶程序员十分友好。
4、web.py框架
web.py 是一个Python 的web框架,它简单而且功能强大。web.py 是公开的,无论用于什么用途都是没有限制的。而且相当的小巧,应当归属于轻量级的web 框架。但这并不影响web.py 的强大,而且使用起来很简单、很直接。
5、Tornado框架
Tornado是一个Python web框架和异步网络库,最初是在FriendFeed开发的。通过使用非阻塞网络I/O, Tornado可以扩展到数以万计的开放连接,非常适合长轮询、WebSockets和其他需要与每个用户进行长时间连接的应用程序。
6、TurboGears框架
TurboGears具有其他Python框架都具有的功能,但与其他框架一样没有限制,因此可以说是框架的终结者。也可以应用于简单的微体系结构项目。它感觉不像在框架中工作,而是写新的功能。
7、CherryPy框架
CherryPy是一个轻量级的python网络框架,用来创建网络应用。比如快速实现api接口、做网站后端这样。感觉和flask差不多。
8、Flcon框架
Falcon是一个最低限度的ASGI/WSGI框架,用于构建任务关键型REST API和微服务,重点关注规模上的可靠性、正确性和性能。
9、Asgineer框架
Asgineer是一种编写异步Web应用程序的工具,使用尽可能少的抽象,同时仍然提供友好的API。
10、Bottle框架
Bottle是一个用于Python的快速、简单和轻量级的WSGI微型网络框架。它作为单个文件模块分发,除了Python标准库之外没有任何依赖项。 参考技术A 对初学者来说,循序渐进是最重要的,我推荐学习 Flask(Welcome | Flask (A Python Microframework))
Flask 很轻,花很少的成本就能够开发一个简单的网站。非常适合初学者学习。
Flask 框架学会以后,可以考虑学习插件的使用。例如使用 WTForm + Flask-WTForm 来验证表单数据,用 SQLAlchemy + Flask-SQLAlchemy 来对你的数据库进行控制。
BTW:果壳网基于 Flask 开发的。
另外也简单介绍下其他框架:
1. Django。如楼上所说,是一个全能型框架。目前 Django 的使用面还是很广的,有学习的价值,但是不建议初学者学习,因为要学习的东西太多了,一下子难以吸收会失去兴趣。当然,Django 的目的是为了让开发者能够 快速 地开发一个网站,它提供了很多模块,其中我最喜欢的就是 admin 模块,http://your.site.com/admin 就进入了网站的后台(内置的哦~)方便地对数据进行操作,等等。。。。因此,如果对 Django 熟悉的话,papapa 一下子就写好一个网站的原型了。
2. Tornado。传说中性能高高的框架。Tornado 是一个很好的框架,支持异步处理的功能,这是它的特点,其他框架不支持。另外一点是,Tornado 的设计似乎更注重 RESTful URL。但 Tornado 提供了网站基本需要使用的模块外,剩下的则需要开发者自己进行扩展。例如数据库操作,虽然内置了一个 database 的模块(后来独立出去了,现在叫做 torndb,bdarnell/torndb · GitHub)但是不支持 ORM,快速开发起来还是挺吃力的。如果需要 ORM 支持的话,还需要自己写一层将 SQLAlchemy 和 Tornado 联系起来,而且这里还有一个坑。
BTW:知乎就是基础 Tornado 开发的。
3. Bottle。Bottle 和 Flask 都属于轻量级的 Web 框架。但是 Bottle 似乎落寞了。我觉得跟他的 API 设计有关系。个人认为 Bottle 使用起来不那么顺手,因此也用得少。这里不做太多介绍。
4. web.py。也是很轻的一个框架,使用不多,也不做介绍。
5. web2py。我看楼上都没有对这个框架做介绍。这个框架是 Google 在 web.py 基础上二次开发而来的,兼容 GAE 。性能据说很高,曾经用他来做自己的主页,感觉也还不错。缺点同样是对扩展支持不太好,需要自己进行扩展。
6. Quixote。著名的 豆瓣 就是基于 Quixote 开发的。跟上面几个框架不同,Quixote 的路由会有些特别。另外 Quixote 的性能据说也好。本回答被提问者采纳
html5开发android,ios应用用啥框架最好?必需要用框架吗,为啥?
现在比较主流的移动开发web框架有 sencha touch、jquery mobile、jqmobi和jqtouch。但个人觉得目前这些框架都不太适用于生产环境,自己研究下倒是可以。原因是在终端上的性能和交互体验还不是很好,且对框架UI的重构工作量较大。
如果考虑跨平台开发,可以自己写一个简单的框架,对touch、slide、scroll和UI做一些集成,性能上会优于这些框架。 参考技术A html5主要是处理前端,在手机上也同样是
是不是应用框架和你的应用复杂度有关
如果一开始做,建议不要使用框架,否则会被框架所限
如果已经具备一定开发经验和框架使用尝试,那么使用框架会对多项目、大项目有所帮助。追问
如果前端要和后台交互数据怎么办呢?html5支持动态数据处理吗?
追答如果仅仅是和数据库,那html5可以用离线存储甚至是sqllite。如果要网络通讯交互编写服务端的话,那必须得使用动态语言了
本回答被提问者和网友采纳 参考技术BHTML5开发框架比较多人用的有以下:
jquery mobile
sench touch
extjs
phoneGap
MUI
由于移动开发中,各种屏幕大小分辨率都不一样,因此不用框架去控制,界面会变形等问题,当然框架不是必需的,但是没有框架会增加开发难度。
以上是关于python web开发用啥框架的主要内容,如果未能解决你的问题,请参考以下文章