Python 有哪些好的 Web 框架

Python 有哪些好的 Web 框架,第1张

1、Django框架

优点:是一个高层次Python Web开发框架,特点是开发快速、代码较少、可扩展性强。Django采用MTV(Model、Template、View)模型组织资源,框架功能丰富,模板扩展选择最多。对于专业人员来说,Django是当之无愧的Python排名第一的Web开发框架。

缺点:包括一些轻量级应用不需要的功能模块,不如Flask轻便。过度封装很多类和方法,直接使用比较简单,但改动起来比较困难。相比于 C,C++性能,Django性能偏低。模板实现了代码和样式完全分离,不允许模板里出现Python代码,灵活度不够。另外学习曲线也相对陡峭。

2、Flask框架

优点:Flask是一个Python Web开发的微框架,严格来说,它仅提供Web服务器支持,不提供全栈开发支持。然而,Flask非常轻量、非常简单,基于它搭建Web系统都以分钟来计时,特别适合小微原型系统的开发。花少时间、产生可用系统,是非常划算的选择。

缺点:对于大型网站开发,需要设计路由映射的规则,否则导致代码混乱。对新手来说,容易使用低质量的代码创建 “不良的web应用程序”。

3、Pyramid框架

优点:是一个扩展性很强且灵活的Python Web开发框架。上手十分容易,比较适合中等规模且边开发边设计的场景。Pyramid不提供绝对严格的框架定义,根据需求可以扩展开发,对高阶程序员十分友好。

缺点:国内知名度不高,高级用法需要通过阅读源代码获取灵感。默认使用Chameleon模板,灵活度没有成为一个要素。

4、web.py框架

优点:正如其名,web.py是一个采用Python作为开发语言的Web框架,简单且强大。俄罗斯排名第一的Yandex搜索引擎基于这个框架开发,Guido van Rossum认为这是最好的Python Web框架,还需要说别的吗?有事实作证、有大牛认可,用起来吧!

缺点:Web.py并未像其他框架一样保持与Python 3兼容性的最新状态。这不仅意味着缺乏对异步语法的支持,还意味着缺少对已弃用的函数的错误。此外,目前尚不清楚维护者是否有计划在Python 2到达其支持生命周期结束后保持Web.py的最新状态。

5、Tornado框架

优点:Tornado是一个基于异步网络功能库的Web开发框架,因此,它能支持几万个开放连接,Web服务高效稳定。可见,Tornado适合高并发场景下的Web系统,开发过程需要采用Tornado提供的框架,灵活性较差,确定场景后再考虑使用不迟。

缺点:Tornado 5.0改进了与Python的本机异步功能的集成。因此不再支持Python 3.3.并且Python 3.5用户必须使用Python 3.5.2或更高版本。Tornado 6.0将需要Python 3.5及更高版本,并将完全放弃Python 2支持。

一、使用工具:python、web.py

二、搭建步骤:

1、 环境搭建。

安装python2.7.10,注意要把python路径加入系统环境变量。版本不能低于2.7.9,但不能用3.0以上,web.py支持不好。安装web.py, 官方网下载来装就行,记得是解压后进去:python setup.py install,安装wingIDE,这个是最好用的python编辑器,装apache并配置python-wscgi,

2. 开发。

建立数据库建议写个生成脚本,比如createDataBase.py,有改动重新运行一遍,不要试用ide去建。

3. 发布网站。

发布网站用apache+pywscgi即可,当然如果用户少需求不高直接在命令行python index.py 8080也能让网站跑起来,但是这样有几个缺点

a. 所有到这台服务器这个系统的8080端口访问都变成了这个网站,也就是说如果你无法指定特定域名了。

b. 静态文件都是每次去读文件非常慢,比如你的网站logo,网站js,字体等,会极大的拖慢网站速度!!!这个非常严重,这个是我试用apache的主要原因。专业服务器程序优化的好,实测快了不少。

三、注意事项:注意要把python路径加入系统环境变量。版本不能低于2.7.9,但不能用3.0以上,web.py支持不好。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/415770.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-24

发表评论

登录后才能评论

评论列表(0条)

    保存