pythonweb框架哪个好
python在web开发方面有着广泛的应用。鉴于各种各样的框架,对于开发者来说如何选择将成为一个问题。为此,我特此对比较常见的几种框架从性能、使用感受以及应用情况进行一个粗略的分析。
1Django
Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,模板T和视图V。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。Django与其他框架比较,它有个比较独特的特性,支持orm,将数据库的操作封装成为python,对于需要适用多种数据库的应用来说是个比较好的特性。不过这种特性,已经有其他库完成了,sqlalchemy.
2Flask
Flask是一个使用Python编写的轻量级Web应用框架。其WSGI工具箱采用Werkzeug,模板引擎则使用Jinja2。Flask使用BSD授权。
Flask也被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。
Flask很轻,花很少的成本就能够开发一个简单的网站。非常适合初学者学习。Flask框架学会以后,可以考虑学习插件的使用。例如使用WTForm+Flask-WTForm来验证表单数据,用SQLAlchemy+Flask-SQLAlchemy来对你的数据库进行控制。
3Tornado
Tornado是一种Web服务器软件的开源版本。Tornado和现在的主流Web服务器框架(包括大多数Python的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。
得利于其非阻塞的方式和对epoll的运用,Tornado每秒可以处理数以千计的连接,因此Tornado是实时Web服务的一个理想框架。不过现在与众多的框架比较,Tornado已经被抛在了后面,Django已经超过了它,更不说其他框架了,只能说Tornado使用纯python开发的性能还是不能与其他框架借助于cython开发的性能相比。
4web.py
web.py是一个Python的web框架,它简单而且功能强大。web.py是公开的,无论用于什么用途都是没有限制的。而且相当的小巧,应当归属于轻量级的web框架。但这并不影响web.py的强大,而且使用起来很简单、很直接。在实际应用上,web.py更多的是学术上的价值,因为你可以看到更多web应用的底层,这在当今“抽象得很好”的web框架上是学不到的:)
5Aiohttp
高性能异步web框架,既有客户端的也有服务端的,还支持web-socket
6Sanic
与flask类似,并支持异步
7Vibora
旨在成为最快的pythonweb框架。vibora的高性能依赖于cython实现的uvloop异步框架及cython实现的http_parser,再加上一些cython构建的web组件,比如模板,user-route等。目前还处于测试阶段。
8Bottle
Bottle是一个简单高效的遵循WSGI的微型pythonWeb框架。说微型,是因为它只有一个文件,除Python标准库外,它不依赖于任何第三方模块。
9Falcon
Falcon是一个构建云API的高性能Python框架,它鼓励使用REST架构风格,尽可能以最少的力气做最多的事情。
10weppy
性能优于flask的一个全栈web框架。
以上内容为大家介绍了python培训之web框架哪个好,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。
猜你喜欢LIKE
相关推荐HOT
更多>>python文件不存在时创建文件
最近写python脚本的时候遇到个读写文件的问题,当我用withopen打开文件读文件的时候如果文件不存在就会报FileNotFoundError这个错误,并且在加...详情>>
2023-11-07 16:27:20python如何创建列表
列表是有序可变的元素集合,列表可以嵌套,即列表里面的元素可以是列表,此外列表中的元素数据类型可以不一致,列表的定义方式有三种,如下所示...详情>>
2023-11-07 15:55:59python怎么传入不确定参数
python允许在形参前面添加一个星号(*),这样就意味着该参数可接收多个参数值,多个参数值被当成元组传入。下面程序定义了一个形参个数可变的函...详情>>
2023-11-07 14:51:57python如何对数组删除元素
python中关于对列表元素的删除操作,有以下几种方式1.remove:删除单个元素,删除首个符合条件的元素,按值删除举例说明:>>>str=[1,2,3,4,5,2,6]...详情>>
2023-11-07 12:47:51