歡迎光臨
每天分享高質量文章

對比近10000個Python開源專案,我們精選出最實用的34個

導讀:踏著人工智慧、區塊鏈的東風,近年來一路“橫衝直撞”的 Python 在實現了從小眾語言到主流的完美轉身後,進入 2019 依舊沒有透出絲毫停下來的架勢,反倒有些越燒越熱的味道。本文將為你介紹 2019 年最值得關註的 34 個 Python 開源專案——Let’s go!

 

 

作者:Mybridge

編譯:仲培藝

來源:CSDN(ID:CSDNNews)

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

這些開源專案的平均 Star 數為3293(註:本文未實時更新這些專案的Star數,當前平均值已超過此數字,以下各專案Star數僅供參考),下麵將把它們分為 8 類進行分享:

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

 

01 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 團隊開發。

02 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 的迷你、可擴充套件、快速且高效的框架。

03 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 命令列工具。

 

04 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 可以進行許多簡單的修改,但你也可以根據需要,自定義選擇器、過濾器和修改器來構建更複雜的重構過程。

 

05 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

  • 介紹: 一個用於甜美和奶油色列印除錯的小庫。

 

06 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 科學棧。

 

07 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)的不同運算基準。

 

08 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

    已同步到看一看
    贊(0)

    分享創造快樂