精選Python開源項目Top10!
過去一個月里,我們對近 250 個 Python 開源項目進(jìn)行了排名,并挑選出熱度前 10 的項目。這份清單的平均 github star 數(shù)量達(dá) 1140,涵蓋了包括性能分析、提取 PDF 中的表格、HTTP Framework、Refactoring, Unix-gazing shell、HTTP APIs、PaperTTY 等主題,希望你能從中找到一個你所感興趣的項目深入探究。
開源項目一:Py-spy
Py-spy 是一種由 Python 程序驅(qū)動的采樣分析器,它允許可視化 Python 程序內(nèi)容,而無需重新啟動程序或以任何方式修改代碼。它是用 Rust 語言編寫的,運(yùn)行速度快,計算成本低,不需要在配置 Python 程序的進(jìn)程中同時運(yùn)行,也不會以其他方式中斷當(dāng)前正在運(yùn)行的程序,這意味著 Py-Spy 可以安全地用于 Python 代碼的生成。此外,Py-Spy 適用于 Linux,OSX 和 Windows 等平臺,并支持在版本的 CPython 解釋器上進(jìn)行分析工作。
Github 鏈接:
https://github.com/benfred/py-spy?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目二:Camelot
Camelot 是一款用于從 PDF 文件中提取表格的 Python 應(yīng)用庫。它能夠幫助你輕松地從 PDF 文件中提取出所需的表格數(shù)據(jù)并轉(zhuǎn)化為 Pandas DataFrame 格式,并以 JSON、Excel 或 HTML 的格式輸出。
Github 鏈接:
https://github.com/socialcopsdev/camelot?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目三:Responder
Responder 是一款基于 Python 的 HTTP 服務(wù)框架,它將為你提供一個預(yù)安裝版本的 ASGI 應(yīng)用程序,包含 jinja2 模板,基于 uvloop 的生產(chǎn)網(wǎng)絡(luò)服務(wù)器,能夠自動響應(yīng) gzip 壓縮服務(wù)請求。
Github 鏈接:
https://github.com/kennethreitz/responder?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目四:Bowler
Bowler:是一種用于在語法樹級(syntax tree level)操縱 Python 的重構(gòu)工具。它可以實現(xiàn)安全而大規(guī)模的代碼修改任務(wù),同時協(xié)助生成的代碼可以編譯和運(yùn)行。它提供了一個簡單的命令行界面和流暢的 Python API 接口,用于在代碼中進(jìn)行復(fù)雜的代碼修改。具體來說,Bowler 通過一系列選擇器、過濾器和修改器來調(diào)用 Query API 接口實現(xiàn)腳本重構(gòu)。使用現(xiàn)有的 API 可以進(jìn)行許多簡單的修改,但你也可以根據(jù)需要,自定義選擇器、過濾器和修改器來構(gòu)建更復(fù)雜的重構(gòu)過程。有關(guān)更多信息,可以查閱項目主頁的介紹。
Github 鏈接:
https://github.com/facebookincubator/bowler?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目五:Xonsh
Xonsh 是一種基于 Python,專注于 Unix 的 Shell 語言和命令行提示符的跨平臺項目。該語言是 Python 3.4+ 的超集,且?guī)в蓄~外使用于 Bash 和IPython 的其他 shell 原語。Xnosh 適用于專家和新手的日常使用,并支持所有主要的操作系統(tǒng),包括 Linux,Mac OSX 和 Windows。
Github 鏈接:
https://github.com/xonsh/xonsh?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目六:Molten
Molten 是一個適用于 Python 3.6 及更高版本構(gòu)建 HTTP API 的小型,可擴(kuò)展,快速且效果好的框架。
Github 鏈接:
https://github.com/evyatarmeged/Raccoon?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目七:Dbxfs
Dbxfs 是一款基于 Python3.5+ 的,用于 Dropbox 的用戶文件系統(tǒng)。它允許你掛載 Dropbox 文件夾,就像將它掛在本地文件系統(tǒng)上一樣。Dbxfs 與官方Dropbox 客戶端的不同之處主要在于:
訪問需要網(wǎng)絡(luò)連接
訪問不需要磁盤空間,但如果磁盤空間可用,則會緩存。
Dbxfs 已經(jīng)在 OpenBSD,Linux 和 macOS 平臺上進(jìn)行了測試,但它也能夠在任何提供與 FUSE 兼容的庫或任何能夠掛載 SMB 共享的 POSIX 系統(tǒng)上運(yùn)行,而對 Windows 平臺的支持即將推出。在諸如 ARM 這樣非 x86 架構(gòu)上運(yùn)行時,Dbxfs 不需要也不依賴特定的文件系統(tǒng)。
Github 鏈接:
https://github.com/rianhunter/dbxfs?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目八:Twitter-cleanup
PyPortfolioOpt 是一款基于 python 的金融投資組合優(yōu)化的開源項目,其中包括經(jīng)典有效的前沿和實驗方法。它應(yīng)用廣泛且易于擴(kuò)展,對投資者和從業(yè)者同樣適用。PyPortfolioOpt 可以幫助你高效地組合 alpha 生成器。你可以訪問 ReadTheDocs 上的文檔以深入了解該項目。
Github 鏈接:
https://github.com/robertmartin8/PyPortfolioOpt?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目九:Sotawhat
Sotawhat 能夠通過抓取 arxiv 論文來總結(jié)論文摘要并返回的研究結(jié)果,它能幫助你了解每天的論文和研究進(jìn)展。
Github 鏈接:
https://github.com/chiphuyen/sotawhat?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
開源項目十:PaperTTY
PapertTTY 是一個通過命令行驅(qū)動的 Python 模塊,用于將 Linux 虛擬終端或標(biāo)準(zhǔn)輸入的內(nèi)容呈現(xiàn)到 Waveshare 電子顯示器上。它具有如下重要特征:
適用于Raspberry Pi 和Raspbian 的設(shè)計。
它能夠幫助你輕松地運(yùn)行交互式控制臺程序(包括vim,tmux,irssi,nethack 等),并通過腳本顯示你想要的任何內(nèi)容。
運(yùn)行速度快,特別是對于小字體,還可以交互式使用,但還需進(jìn)一步改進(jìn)甚至更快。此外,它在Raspberry Pi 3 上的使用比Zero 更有趣。
只有更改的區(qū)域才會在顯示屏上更新,因此鍵入比全屏滾動更快。
它能夠繪制光標(biāo)并在圖像移動時更新圖像。
無閃爍。
允許更改字體,字體大小,方向和一些其他參數(shù)。
支持TrueType 和位圖字體(采用PIL 格式)。
捆綁systemd 服務(wù)單元,可以在啟動時盡早啟動服務(wù)并優(yōu)雅地停止服務(wù)。
目前僅支持使用單色 2.13“HAT 進(jìn)行測試,但它也適用于其他型號,其他功能還有待完善。
Github 鏈接:
https://github.com/joukos/PaperTTY?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more