2019 年最值得關注的 34 個 Python 開源項目——Let's go!

在過去的一年裏,Mybridge 比較了近萬個 Python 開源庫,並從中挑選出最實用的 34 個工具來幫助你開發。

這些開源項目的平均 Star 數爲 3293,下面將把它們分爲 7 類進行分享:


開源項目對程序員來說意義非凡,可以大大提升軟件開發速度,讓我們花些時間,一起來看看這些在可能被你錯過了的 Python 開源項目吧。

一、Python Toolkit

1. Pipenv

Star 數:15710

GitHub:

https://github.com/pypa/pipenv

介紹:Pipenv 是 Python.org 官方推進的 基於 pip 的 Python包管理工具,旨在將所有包管理工具(如 bundler、composer、npm、cargo、yarn 等)的優點集中應用於 Python 領域中的工具,對各個平臺都有很好的支持。


2. Pyxel

Star 數:4884

GitHub:

https://github.com/kitao/pyxel

介紹:一個用 Python 編寫復古遊戲的開發環境。


3. PyTest v3.5

Star 數:3631

GitHub:

https://github.com/pytest-dev/pytest

介紹:一個非常成熟的全功能的 Python 測試框架,使編寫小型測試變得容易,同時支持複雜的功能測試。


4. Poetry

Star 數:3228

GitHub:

https://github.com/sdispater/poetry

介紹:讓 Python 依賴管理和打包變得容易。


5. Loguru

Star 數:3048

GitHub:

https://github.com/Delgan/loguru

介紹:一個 Python 日誌記錄庫,使 Python 日誌變得極端簡單。


6. Faust

Star 數:2733

GitHub:

https://github.com/robinhood/faust

介紹:Faust 是一個流處理庫,用於構建 Python 流應用程序,將 Kafka 流中的思想移植到 Python 中。


7. Pampy

Star 數:2399

GitHub:

https://github.com/santinic/pampy

介紹:優雅的 Python 模式匹配庫——你夢寐以求的 Python 模式匹配。Pampy 相當小(150行),速度相當快,並且使代碼更具可讀性,更容易推理。


8. Pyre-check

Star 數:2242

GitHub:

https://github.com/facebook/pyre-check

介紹:Facebook 開源的 Python 快速靜態類型檢查器。


9. Delorean

Star 數:1519

GitHub:

https://github.com/myusuf3/delorean

介紹:Delorean 是 Python 裏一個很方便的日期時間庫,可以讓人更簡單省心的獲取時間,不必受困於時間模塊中的各種問題。


10. Cirq

Star 數:1394

GitHub:

https://github.com/quantumlib/Cirq

介紹:是 Google 專爲 NISQ 算法打造的框架,用於創建、編輯和調用嘈雜中型量子 (NISQ,Noisy Intermediate-Scale Quantum),允許開發者爲特定的量子處理器編寫量子算法。


11. Python-nubia

Star 數:1032

GitHub:

https://github.com/facebookincubator/python-nubia

介紹:一款由 Python 編寫的,用於建立命令行應用的輕型框架(命令行與交互式 shell 框架),由 Facebook 團隊開發。


二、Web

12. Requests-HTML

Star 數:8995

GitHub:

https://github.com/kennethreitz/requests-html

介紹:一個解析 HTML 的庫


13. Bokeh

Star 數:8943

GitHub:

https://github.com/bokeh/bokeh

介紹:一個 Python 交互式可視化庫,支持在現代 Web 瀏覽器中對數據進行美觀且有意義的可視化表示。


14. Vibora

Star 數:4665

GitHub:

https://github.com/vibora-io/vibora

介紹:一個快速、異步且性感的 Python Web 框架。


15. Pywebview v2.0

Star 數:1208

GitHub:

https://github.com/r0x0r/pywebview

介紹:一個webview 組件的輕量級跨平臺原生封裝,實現利用 Web 技術開發 GUI 應用,允許在它自己的專用窗口中顯示 HTML 內容。


16. WhatWaf

Star 數:995

GitHub:

https://github.com/Ekultek/WhatWaf

介紹:檢測並繞過 Web 應用程序防火牆和保護系統。


17. Molten

Star 數:796

GitHub:

https://github.com/Bogdanp/molten

介紹:一個用 Python 3.6 或更高版本構建 HTTP API 的迷你、可擴展、快速且高效的框架。


三、Terminal

18. Termtosvg

Star 數:7522

GitHub:

https://github.com/nbedos/termtosvg

介紹:一款錄製終端操作的命令行工具,它可以將終端會話錄製成一個單獨的用 Python 編寫的 SVG 動畫。


19. Asciinema v2.0

Star 數:6668

GitHub:

https://github.com/asciinema/asciinema

介紹:Python 內置的終端會話記錄器,能夠在 Linux 等終端上進行錄屏,並且錄屏不生成視頻文件,而是生成文字形式。


20. Termgraph

Star 數:2005

GitHub:

https://github.com/mkaz/termgraph

介紹:在終端中繪製基本圖形的 Python 命令行工具。


四、Code Editor

21. Black

Star 數:7629

GitHub:

https://github.com/ambv/black

介紹:“不妥協”的 Python 代碼格式化工具。之所以稱之爲“不妥協”是因爲它檢測到不符合規範的代碼風格直接就幫你全部格式化好,根本不需要你確定,直接替你做好決定,因此速度也很快。


22. Algojammer

Star 數:2750

GitHub:

https://github.com/ChrisKnott/Algojammer

介紹:是一個實驗性的概念驗證代碼編輯器,用於在 Python 中編寫算法。


23. Bowler

Star 數:879

GitHub:

https://github.com/facebookincubator/bowler

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


五、Debugging

24. Py-spy

Star 數:3479

GitHub:

https://github.com/benfred/py-spy

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


25. Birdseye

Star 數:1068

GitHub:

https://github.com/alexmojaki/birdseye

介紹:一個使用 AST 的快速、便捷、表達式爲中心的圖形化 Python 調試器。


26. Icecream

Star 數:728

GitHub:

https://github.com/gruns/icecream

介紹: 一個用於甜美和奶油色打印調試的小庫。


Compiler

27. Transcrypt

Star 數:1561

GitHub:

https://github.com/qquick/Transcrypt

介紹:一款把 Python(Python 3.7)編寫的代碼轉換成 JavaScript 的工具,精簡、快速、開放。讓你告別手寫繁複的 JavaScript 代碼,使用相對簡明清晰的Python代替這一工作。


28. Pyodide

Star 數:1041

GitHub:

https://github.com/iodide-project/pyodide

介紹:編譯成 WebAssembly 的 Python 科學棧。


六、Data Related

29. Voluptuous

Star 數:1368

GitHub:

https://github.com/alecthomas/voluptuous

介紹:雖然頂着個 Voluptuous(性感豐滿的)的名字,但就是一個 Python 數據驗證庫。


30. Botflow

Star 數:933

GitHub:

https://github.com/kkyon/botflow

介紹:用於數據管道工作(如網絡爬蟲、機器學習、量化交易等等)的 Python 快速數據驅動編程框架。


31. Fast-Pandas

Star 數:798

GitHub:

https://github.com/mm-mansour/Fast-Pandas

介紹:Pandas 中針對不同大小數據幀(DataFrame)的不同運算基準。


七、Chart

32. pywonderland:A Tour in the Wonderland of Math with Python(基於 Python 的數學仙境之旅)

Star 數:3172

GitHub:

https://github.com/neozhaoliang/pywonderland

介紹:一組 Python 腳本,用於繪製漂亮的圖形及模擬有趣的數學算法。


33. Chartify

Star 數:1817

GitHub:

https://github.com/spotify/chartify

介紹:讓數據科學家畫圖變得更輕鬆的 Python 庫。


34. Hypertools v0.5

Star 數:1353

GitHub:

https://github.com/ContextLab/hypertools

介紹:高維數據可視化&處理的 Python 工具包(數據降維&可視化工具)。


原文:

https://medium.mybridge.co/34-amazing-python-open-source-libraries-for-the-past-year-v-2019-93d6ee11aceb


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章