首页 / 知识
十个Python Web应用开发框架
2023-11-12 13:40:00
python是一门动态、面向对象语言。其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的特性。除了语言本身的设计目的之外,Python标准库也是值得大家称赞的,Python甚至还自带服务器。
其它方面,Python拥有足够多的免费数据函数库、免费的Web网页模板系统、还有与Web服务器进行交互的库、这些都可以设计到你的Web应用程序里面。
这篇文章列举了十个PythonWeb应用开发框架,不过因为Django似乎人尽皆知的样子,没有列在文中。
CubicWeb
CubicWeb的最重要的支柱就是代码的可重用性。CubicWeb宣扬自己不仅是一个Web开发框架,而且还是一款语义Web开发框架。CubicWeb使用关系查询语言(RQLRelationQueryLanguage)与数据库之间进行通信。
Zope2
Zope2是一款基于Python的Web应用框架,是所有PythonWeb应用程序、工具的鼻祖,是Python家族一个强有力的分支。Zope2的“对象发布”系统非常适合面向对象开发方法,并且可以减轻开发者的学习曲线,还可以帮助你发现应用程序里一些不好的功能。
Web2py是一个用Python语言编写的免费的开源Web框架,旨在敏捷快速的开发Web应用,具有快速、可扩展、安全以及可移植的数据库驱动的应用,遵循LGPLv3开源协议。
Web2py
Web2py提供一站式的解决方案,整个开发过程都可以在浏览器上进行,提供了Web版的在线开发,HTML模版编写,静态文件的上传,数据库的编写的功能。其它的还有日志功能,以及一个自动化的admin接口。
TurboGears
它是另外一个基于Python的MVC风格的Web应用程序框架。
TurboGears开发人员称这个项目是一个“大框架(megaframework)”,这是因为它是由现有的子项目构成的。TurboGears可以帮助将很多主要组件集成在一起:
MochiKit:JavaScript库
Kid:模板语言
CherryPy:基本Web框架
SQLObject:对象关系映射器(ORM)
Pylons
Pylons是一个开放源代码的Web应用框架,使用python语言编写。它对WSGI标准进行了扩展应用,提升了重用性且将功能分割到独立的模块中。
Pylons是最新的Web应用框架中的典型,类似于Django和TurboGears。Pylons受RubyonRails影响很深:它的两个组件,Routes和WebHelpers是Rails特性的Python实现。
Grok
Grok是一个为Python开发者提供的Web应用开发框架,Grok的重点是敏捷开发,是一个易用而且功能强大的开发框架,基于Zope3技术。
Web.py
Web.py是一个轻量级的开源PythonWeb框架,小巧灵活、简单并且非常强大,在使用时没有任何限制。目前Web.py被广泛运用在许多大型网站,如西班牙的社交网站Frinki、主页日平均访问量达7000万次的Yandex等。
Pyramid
Pyramid也是一款轻量级的开源PythonWeb框架,是Pylons项目的一部分。Pyramid只能运行在Python2.x或2.4以后的版本上。在使用后端数据库时无需声明,在开发时也不会强制使用一些特定的模板系统。
CherryPy
CherryPy是一个基于Python的Web使用程序开发框架,它极大地简化了运用Python的web开发人员的工作。它为Python开发人员提供了友好的HTTP协议接口。大家知道,HTTP可是万维网的支柱协议,而CherryPy将HTTP协议简化成PythonAPI来供Python开发人员使用,这极大地简化了Web开发人员对HTTP协议的操作。
CherryPy自身内置了一个HTTP服务器,或者称为Web服务器。这样,对于CherryPy的用户来说,不用另外搭设Web服务器就能直接运行CherryPy应用程序了。实际上,Web服务器是到达CherryPy应用程序的关口,是所有的HTTP请求和响应的必经之地。
因此,可以这样理解CherryPy内建的Web服务器:它是位于处理客户端与服务器端之间的一层软件,用于把底层TCP套按字传输的信息转换成Http请求,并传递给相应的处理程序;同时,还把上层软件传来的信息打包成Http响应,并向下传递给底层的TCP套按字。
Flask
Flask是一个轻量级的Web应用框架,使用Python编写。基于WerkzeugWSGI工具箱和Jinja2模板引擎。使用BSD授权。
Flask也被称为“microframework”,因为它使用简单的核心,用extension增加其他功能。Flask没有默认使用的数据库、窗体验证工具。然而,Flask保留了扩增的弹性,可以用Flask-extension加入这些功能:ORM、窗体验证工具、文件上传、各种开放式身份验证技术。
以上内容为大家介绍了十个PythonWeb应用开发框架,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们http://www.mobiletrain.org/
最新内容
相关内容
linux命令连接网站?
linux命令连接网站?,网络,系统,信息,地址,名称,密码,设备,软件,网站,工具,Linux下必须知道的11个网络命令1、netstat -r:打印路由表。路由表保linux清空信息的命令?
linux清空信息的命令?,信息,系统,设备,情况,命令,暂停,状态,发行,数字,文件,Linux文件系统操作命令1、df命令:用于显示文件系统的磁盘空间使用linux系统名称命令?
linux系统名称命令?,系统,工作,地址,管理,信息,标准,名称,网络,命令,目录,Linux系统常见命令linux系统常用操作命令如下:ls:全拼list,功能是列出linux系统命令行在?
linux系统命令行在?,系统,地址,工作,管理,信息,工具,最新,密码,首页,标准,怎么把linux系统的命令行打开在Linux系统中,打开命令行窗口需要使用手机linux命令行软件?
手机linux命令行软件?,软件,系统,工具,名称,电脑,互动,设备,手机,代码,服务,学生程序都在用的10款提高效率的工具1、·Alfred查询和搜索工具linux系统命令改时间?
linux系统命令改时间?,时间,系统,服务,大陆,国家,基础,城市,命令,时区,时钟,如何在Linux中更改时区1、方法2:使用时区选择菜单打开终端应用程序linux做系统盘命令?
linux做系统盘命令?,系统,信息,设备,软件,情况,报告,工具,命令,首次,网上,Linux系统中quota磁盘命令的相关使用解析1、quota 简单的说就是限制linux系统重亲命令?
linux系统重亲命令?,工作,系统,标准,设备,名称,服务,命令,提示,主机,级别,详解Linux系统中关机与重启相关命令的用法1、init是所有进程的祖先,运行linux命令的软件?
运行linux命令的软件?,软件,平台,系统,灵活,工具,管理,终端,协议,服务器,用户,linux远程连接软件有哪些EasySSH EasySSH是一款便捷的GUI SSH客linux防火墙标准命令?
linux防火墙标准命令?,状态,系统,服务,网络,工具,软件,标准,防火墙,地址,信息,Linux关闭防火墙几种命令在Linux中,关闭防火墙的命令取决于您正linux系统测试命令?
linux系统测试命令?,系统,工作,地址,标准,信息,命令,数据,单位,软件,目录,软件测试中常用的Linux命令有哪些?1、Linux常用命令包括ls、cd、wclinux系统安卓命令?
linux系统安卓命令?,系统,软件,信息,数据,地址,标准,名字,设备,工作,网络,linux怎么用命令看android手机上已安装应用的名字,包名,版本,图标..