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