10款最好的Web開(kāi)發(fā)的 Python 框架
Python 是一門動(dòng)態(tài)、面向?qū)ο笳Z(yǔ)言。其最初就是作為一門面向?qū)ο笳Z(yǔ)言設(shè)計(jì)的,并且在后期又加入了一些更高級(jí)的特性。除了語(yǔ)言本身的設(shè)計(jì)目的之外,Python標(biāo)準(zhǔn) 庫(kù)也是值得大家稱贊的,Python甚至還自帶服務(wù)器。其它方面,Python擁有足夠多的免費(fèi)數(shù)據(jù)函數(shù)庫(kù)、免費(fèi)的Web網(wǎng)頁(yè)模板系統(tǒng)、還有與Web服務(wù) 器進(jìn)行交互的庫(kù)、這些都可以設(shè)計(jì)到你的Web應(yīng)用程序里面。在這篇文章里,我們將為Python Web開(kāi)發(fā)者介紹基于Python的10大Web應(yīng)用框架。
CubicWeb的最重要的支柱就是代碼的可重用性。CubicWeb宣揚(yáng)自己不僅是一個(gè)Web開(kāi)發(fā)框架,而且還是一款語(yǔ)義Web開(kāi)發(fā)框架。CubicWeb使用關(guān)系查詢語(yǔ)言(RQLRelation Query Language)與數(shù)據(jù)庫(kù)之間進(jìn)行通信。
Zope 2是一款基于Python的Web應(yīng)用框架,是所有Python Web應(yīng)用程序、工具的鼻祖,是Python家族一個(gè)強(qiáng)有力的分支。Zope 2的“對(duì)象發(fā)布”系統(tǒng)非常適合面向?qū)ο箝_(kāi)發(fā)方法,并且可以減輕開(kāi)發(fā)者的學(xué)習(xí)曲線,還可以幫助你發(fā)現(xiàn)應(yīng)用程序里一些不好的功能。
Web2py是一個(gè)用Python語(yǔ)言編寫的免費(fèi)的開(kāi)源Web框架,旨在敏捷快速的開(kāi)發(fā)Web應(yīng)用,具有快速、可擴(kuò)展、安全以及可移植的數(shù)據(jù)庫(kù)驅(qū)動(dòng)的應(yīng)用,遵循LGPLv3開(kāi)源協(xié)議。
Web2py提供一站式的解決方案,整個(gè)開(kāi)發(fā)過(guò)程都可以在瀏覽器上進(jìn)行,提供了Web版的在線開(kāi)發(fā),HTML模版編寫,靜態(tài)文件的上傳,數(shù)據(jù)庫(kù)的編寫的功能。其它的還有日志功能,以及一個(gè)自動(dòng)化的admin接口。
它是另外一個(gè)基于 Python 的 MVC 風(fēng)格的 Web 應(yīng)用程序框架。
TurboGears 開(kāi)發(fā)人員稱這個(gè)項(xiàng)目是一個(gè) “大框架(megaframework)”,這是因?yàn)樗怯涩F(xiàn)有的子項(xiàng)目構(gòu)成的。TurboGears 可以幫助將很多主要組件集成在一起:
- MochiKit:JavaScript 庫(kù)
- Kid:模板語(yǔ)言
- CherryPy:基本 Web 框架
- SQLObject:對(duì)象關(guān)系映射器(ORM)
Pylons是一個(gè)開(kāi)放源代碼的Web應(yīng)用框架,使用python語(yǔ)言編寫。它對(duì)WSGI標(biāo)準(zhǔn)進(jìn)行了擴(kuò)展應(yīng)用,提升了重用性且將功能分割到獨(dú)立的模塊中。
Pylons是最新的Web應(yīng)用框架中的典型,類似于Django和TurboGears。Pylons受Ruby on Rails影響很深:它的兩個(gè)組件,Routes和WebHelpers是Rails特性的Python實(shí)現(xiàn)。
Grok 是一個(gè)為 Python 開(kāi)發(fā)者提供的Web應(yīng)用開(kāi)發(fā)框架,Grok 的重點(diǎn)是敏捷開(kāi)發(fā),是一個(gè)易用而且功能強(qiáng)大的開(kāi)發(fā)框架,基于 Zope 3 技術(shù)。
Web.py是一個(gè)輕量級(jí)的開(kāi)源Python Web框架,小巧靈活、簡(jiǎn)單并且非常強(qiáng)大,在使用時(shí)沒(méi)有任何限制。目前Web.py被廣泛運(yùn)用在許多大型網(wǎng)站,如西班牙的社交網(wǎng)站Frinki、主頁(yè)日平均訪問(wèn)量達(dá)7000萬(wàn)次的Yandex等。
Pyramid也是一款輕量級(jí)的開(kāi)源Python Web框架,是Pylons項(xiàng)目的一部分。Pyramid只能運(yùn)行在Python 2.x或2.4以后的版本上。在使用后端數(shù)據(jù)庫(kù)時(shí)無(wú)需聲明,在開(kāi)發(fā)時(shí)也不會(huì)強(qiáng)制使用一些特定的模板系統(tǒng)。
CherryPy是一個(gè)基于Python的Web使用程序開(kāi)發(fā)框架,它極大地簡(jiǎn)化了運(yùn)用 Python 的web開(kāi)發(fā)人員的工作。它為Python開(kāi)發(fā)人員提供了友好的HTTP協(xié)議接口。大家知道,HTTP可是萬(wàn)維網(wǎng)的支柱協(xié)議,而CherryPy將HTTP協(xié)議簡(jiǎn)化成Python API來(lái)供Python 開(kāi)發(fā)人員使用,這極大地簡(jiǎn)化了Web開(kāi)發(fā)人員對(duì)HTTP協(xié)議的操作。CherryPy自身內(nèi)置了一個(gè)HTTP服務(wù)器,或者稱為Web服務(wù)器。這樣,對(duì)于CherryPy的用戶來(lái)說(shuō),不用另外搭設(shè)Web服務(wù)器就能直接運(yùn)行 CherryPy應(yīng)用程序了。實(shí)際上,Web服務(wù)器是到達(dá)CherryPy應(yīng)用程序的關(guān)口,是所有的HTTP請(qǐng)求和響應(yīng)的必經(jīng)之地。因此,可以這樣理解 CherryPy內(nèi)建的Web服務(wù)器:它是位于處理客戶端與服務(wù)器端之間的一層軟件,用于把底層TCP套按字傳輸?shù)男畔⑥D(zhuǎn)換成Http請(qǐng)求,并傳遞給相應(yīng) 的處理程序;同時(shí),還把上層軟件傳來(lái)的信息打包成Http響應(yīng),并向下傳遞給底層的TCP套按字。
Flask是一個(gè)輕量級(jí)的Web應(yīng)用框架, 使用Python編寫?;?WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授權(quán)。
Flask也被稱為 “microframework” ,因?yàn)樗褂煤?jiǎn)單的核心,用 extension 增加其他功能。Flask沒(méi)有默認(rèn)使用的數(shù)據(jù)庫(kù)、窗體驗(yàn)證工具。然而,F(xiàn)lask保留了擴(kuò)增的彈性,可以用Flask-extension加入這些功 能:ORM、窗體驗(yàn)證工具、文件上傳、各種開(kāi)放式身份驗(yàn)證技術(shù)。
以上就是本文給大家分享的這10款Python框架了,希望大家能夠喜歡。
- 哪些是python中web開(kāi)發(fā)框架
- Python django框架開(kāi)發(fā)發(fā)布會(huì)簽到系統(tǒng)(web開(kāi)發(fā))
- Python用Bottle輕量級(jí)框架進(jìn)行Web開(kāi)發(fā)
- 全面解讀Python Web開(kāi)發(fā)框架Django
- Python用來(lái)做Web開(kāi)發(fā)的優(yōu)勢(shì)有哪些
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5中QWebEngineView內(nèi)嵌網(wǎng)頁(yè)與Python的數(shù)據(jù)交互傳參詳細(xì)方法實(shí)例
- python GUI庫(kù)圖形界面開(kāi)發(fā)之PyQt5瀏覽器控件QWebEngineView詳細(xì)使用方法
- python Django的web開(kāi)發(fā)實(shí)例(入門)
- python Web開(kāi)發(fā)你要理解的WSGI & uwsgi詳解
- 推薦值得學(xué)習(xí)的12款python-web開(kāi)發(fā)框架
相關(guān)文章
Python實(shí)現(xiàn)B站UP主自動(dòng)監(jiān)控功能詳解
眾所周知,B站有很多有趣的UP主,可以教大家一些"實(shí)用"的知識(shí),但是他們一般都沒(méi)有固定的更新時(shí)間。因此,本文將用Python編寫一個(gè)腳本,自動(dòng)監(jiān)控UP是否更新了視頻,感興趣的可以了解一下2022-03-03基于python的Tkinter實(shí)現(xiàn)一個(gè)簡(jiǎn)易計(jì)算器
這篇文章主要介紹了基于python的Tkinter實(shí)現(xiàn)一個(gè)簡(jiǎn)易計(jì)算器的相關(guān)資料,還為大家分享了僅用用50行Python代碼實(shí)現(xiàn)的簡(jiǎn)易計(jì)算器,感興趣的小伙伴們可以參考一下2015-12-12python解決Missing 1 required positional ar
這篇文章主要介紹了python解決Missing 1 required positional argument報(bào)錯(cuò)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12python爬取晉江文學(xué)城小說(shuō)評(píng)論(情緒分析)
這篇文章主要介紹了使用python爬取晉江文學(xué)城小說(shuō)評(píng)論(情緒分析),全文代碼詳細(xì),邏輯清晰,很適合學(xué)習(xí)爬蟲(chóng)爬取的朋友,需要的朋友可以參考下2021-04-04python?DataFrame數(shù)據(jù)分組統(tǒng)計(jì)groupby()函數(shù)的使用
在python的DataFrame中對(duì)數(shù)據(jù)進(jìn)行分組統(tǒng)計(jì)主要使用groupby()函數(shù),本文主要介紹了python?DataFrame數(shù)據(jù)分組統(tǒng)計(jì)groupby()函數(shù)的使用,具有一定的參考價(jià)值,感興趣的可以了解一下2022-03-03淺談pytorch、cuda、python的版本對(duì)齊問(wèn)題
今天小編就為大家分享一篇淺談pytorch、cuda、python的版本對(duì)齊問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01mAP計(jì)算目標(biāo)檢測(cè)精確度實(shí)現(xiàn)源碼
這篇文章主要為大家介紹了mAP計(jì)算目標(biāo)檢測(cè)精確度的實(shí)現(xiàn)源碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05