1. 程式人生 > >精選Python開源專案Top10!

精選Python開源專案Top10!

作者 | MyBridge

譯者 | Linstancy

整理 | Jane

出品 | AI科技大本營

 

【導讀】過去一個月裡,我們對近 250 個 Python 開源專案進行了排名,並挑選出熱度前 10 的專案。這份清單的平均 github star 數量高達 1140,涵蓋了包括效能分析、提取 PDF 中的表格、HTTP Framework、Refactoring, Unix-gazing shell、HTTP APIs、PaperTTY 等主題,希望你能從中找到一個你所感興趣的專案深入探究。

 

 

開源專案一:Py-spy

 

Py-spy 是一種由 Python 程式驅動的取樣分析器,它允許視覺化 Python 程式內容,而無需重新啟動程式或以任何方式修改程式碼。它是用 Rust 語言編寫的,執行速度快,計算成本極低,不需要在配置 Python 程式的程序中同時執行,也不會以任何方式中斷當前正在執行的程式,這意味著 Py-Spy 可以安全地用於 Python 程式碼的生成。此外,Py-Spy 適用於 Linux,OSX 和 Windows 等平臺,並支援在最新版本的 CPython 直譯器上進行分析工作。

 

640?wx_fmt=png

 

Github 連結:

https://github.com/benfred/py-spy?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

開源專案二:Camelot

 

Camelot 是一款用於從 PDF 檔案中提取表格的 Python 應用庫。它能夠幫助你輕鬆地從 PDF 檔案中提取出所需的表格資料並轉化為 Pandas DataFrame 格式,並以 JSON、EXCEL 或 HTML 的格式輸出。

 

640?wx_fmt=png

 

Github 連結:

https://github.com/socialcopsdev/camelot?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

開源專案三:Responder

 

Responder  是一款基於 Python 的 HTTP 服務框架,它將為你提供一個預安裝版本的 ASGI 應用程式,包含 jinja2 模板,基於 uvloop 的生產網路伺服器,能夠自動響應 gzip 壓縮服務請求。

 

640?wx_fmt=jpeg

 

Github 連結:

https://github.com/kennethreitz/responder?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

開源專案四:Bowler

 

Bowler:是一種用於在語法樹級(syntax tree level)操縱 Python 的重構工具。它可以實現安全而大規模的程式碼修改任務,同時保證生成的程式碼可以編譯和執行。它提供了一個簡單的命令列介面和流暢的 Python API 介面,用於在程式碼中進行復雜的程式碼修改。具體來說,Bowler 通過一系列選擇器、過濾器和修改器來呼叫 Query API 介面實現指令碼重構。使用現有的 API 可以進行許多簡單的修改,但你也可以根據需要,自定義選擇器、過濾器和修改器來構建更復雜的重構過程。有關更多資訊,可以查閱專案主頁的介紹。

 

640?wx_fmt=png

 

Github 連結:

https://github.com/facebookincubator/bowler?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

開源專案五:Xonsh

 

Xonsh 是一種基於 Python,專注於 Unix 的 Shell 語言和命令列提示符的跨平臺專案。該語言是 Python 3.4+ 的超集,且帶有額外使用於 Bash 和IPython 的其他 shell 原語。Xnosh 適用於專家和新手的日常使用,並支援所有主要的作業系統,包括 Linux,Mac OSX 和 Windows。

 

640?wx_fmt=png

 

Github 連結:

https://github.com/xonsh/xonsh?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

開源專案六:Molten

 

Molten 是一個適用於 Python 3.6 及更高版本構建 HTTP API 的小型,可擴充套件,快速且高效的框架。

 

640?wx_fmt=png

 

Github 連結:

https://github.com/evyatarmeged/Raccoon?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

開源專案七:Dbxfs

 

Dbxfs 是一款基於 Python3.5+ 的,用於 Dropbox 的使用者檔案系統。它允許你掛載 Dropbox 資料夾,就像將它掛在本地檔案系統上一樣。Dbxfs 與官方Dropbox 客戶端的不同之處主要在於:

 

  • 訪問需要網路連線

  • 訪問不需要磁碟空間,但如果磁碟空間可用,則會快取。

 

 

Dbxfs 已經在 OpenBSD,Linux 和 macOS 平臺上進行了測試,但它也能夠在任何提供與 FUSE 相容的庫或任何能夠掛載 SMB 共享的 POSIX 系統上執行,而對 Windows 平臺的支援即將推出。在諸如 ARM 這樣非 x86 架構上執行時,Dbxfs 不需要也不依賴特定的檔案系統。

 

640?wx_fmt=png

 

Github 連結:

https://github.com/rianhunter/dbxfs?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

開源專案八:Twitter-cleanup

 

PyPortfolioOpt 是一款基於 python 的金融投資組合優化的開源專案,其中包括經典有效的前沿和實驗方法。它應用廣泛且易於擴充套件,對投資者和從業者同樣適用。PyPortfolioOpt 可以幫助你高效地組合 alpha 生成器。你可以訪問 ReadTheDocs 上的文件以深入瞭解該專案。

640?wx_fmt=png

 

Github 連結:

https://github.com/robertmartin8/PyPortfolioOpt?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

開源專案九:Sotawhat

 

Sotawhat 能夠通過抓取 arxiv 論文來總結論文摘要並返回最新的研究結果,它能幫助你瞭解每天最新的論文和研究進展。

 

640?wx_fmt=png

 

Github 連結:

https://github.com/chiphuyen/sotawhat?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

開源專案十:PaperTTY

 

PapertTTY 是一個通過命令列驅動的 Python 模組,用於將 Linux 虛擬終端或標準輸入的內容呈現到 Waveshare 電子顯示器上。它具有如下重要特徵:

 

  • 適用於Raspberry Pi 和Raspbian 的設計。

  • 它能夠幫助你輕鬆地執行互動式控制檯程式(包括vim,tmux,irssi,nethack 等),並通過指令碼顯示你想要的任何內容。

  • 執行速度快,特別是對於小字型,還可以互動式使用,但還需進一步改進甚至更快。此外,它在Raspberry Pi 3 上的使用比Zero 更有趣。

  • 只有更改的區域才會在顯示屏上更新,因此鍵入比全屏滾動更快。

  • 它能夠繪製游標並在影象移動時更新影象。

  • 無閃爍。

  • 允許更改字型,字型大小,方向和一些其他引數。

  • 支援TrueType 和點陣圖字型(採用PIL 格式)。

  • 捆綁systemd 服務單元,可以在啟動時儘早啟動服務並優雅地停止服務。

 

目前僅支援使用單色 2.13“HAT 進行測試,但它也適用於其他型號,其他功能還有待完善。

 

640?wx_fmt=png

 

Github 連結:

https://github.com/joukos/PaperTTY?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more

 

 

——【完】——

 

 

https://blog.csdn.net/dQCFKyQDXYm3F8rB0/article/details/83965799