Python 開發者的6個必備庫

無論你是正在使用 Python 進行快速開發,還是在為 Python 桌面應用製作原生 UI ,或者是在優化現有的 Python 代碼,以下這些 Python 項目都是應該使用的。

Python 憑藉其易用的特點,已經被工業界和學術界廣泛採用。另一方面,Python 豐富的第三方項目——庫、附加組件,和輔助的開發成果——使得 Python 語言的應用範圍被不斷擴大。

其中一些項目,比如 PyInstaller 和 WxPython ,為那些製作桌面應用和終端應用的 Python 開發者提供了便利。其他的項目, 比如 PyPy , 則是用來給伺服器端 Python 應用提供額外的動力。還有一些,像 PBR 、CFFI 和 MyPy , 適用於差不多所有五花八門的 Python 應用,無論在什麼地方運行。

如果你是一個 Python 開發者,所有這六個項目都值得你來熟悉一下。而且所有這些項目,在近幾周都發布了新的主要版本。

Python 必備之 PyPy

Python學習群:593088321

PyPy 主要用於何處?

如果你需要更快的 Python 應用程序,最簡單的實現的方法就是通過 PyPy ,Python 運行時與實時(JIT)編譯器。與使用普通的 Python 對等程序相比,使用 PyPy 的 Python 應用程序的運行速度平均提升7.5倍。不幸的是,PyPy 與許多 Python 的明星框架並不是很好地兼容。PyPy 5.9 在解決這個問題上取得了重大進展。

PyPy 5.9 的功能

數據科學框架 NumPy 和 Pandas 現在運行在 PyPy 的 Python 2.7 兼容版本上。這些框架的大部分問題來源於 PyPy 與現有 C 代碼的介面。為了解決這個問題,PyPy 5.9 對 CFFI 庫(見下文)和 PyPy 的 Python C API 兼容性層進行了改進。

此外,在 5.9 發布版本中,PyPy 的 JSON 解析器在處理多種 JSON 對象,尤其是那些重複使用的相同的詞典鍵值時,明顯更快。

何處下載 PyPy 5.9

你可以直接從 PyPy 的網站下載二進位版本。官方二進位文件包括 Windows、Mac OS 和 Linux 的不同 CPU 架構。請注意,為了兼容 Python 2.7 和 Python 3.5 ,存在不同的二進位文件,因此請確保你正在獲取與你將要運行的腳本所匹配的版本。

BitBucket 上有源代碼和錯誤跟蹤記錄。

Python 必備之 CFFI

Python學習群:593088321

CFFI 主要用於何處? C 外部函數介面庫(CFFI)為 Python 應用程序與獨立 C 庫的交互提供了一種機制。雖然 Python 的 stock 版本,CPython,也擁有自己的庫來完成此類功能,稱為 Ctypes ,但對 Python 用戶來說,比起 Ctypes ,CFFI 使得與 C 庫的交互更容易、更簡便。

CFFI 1.11 的功能與 PyPy 一起更新的 CFFI v1.11 增加了很小但很有用的改動。現在可以在即將發布的 Python 3.7 上使用betas了,在 Windows 上更好地支持外部錯誤處理,並支持 C 語言中更多的現代標準類型,例如 float/double _Complex 和 char16_t和char_32t 類型。最後兩個也是最重要的,在 C 庫中默認使用 Unicode 編碼。

何處下載 CFFI 1.11 ?

CFFI 在 Python Package Index 上可以單獨下載,或通過 Python 的 pip 工具安裝:pip install cffi 。源碼和問題跟蹤可以在 BitBucket 上找到。

Python 必備之 PyInstaller

Python學習群:593088321

PyInstaller 主要用於何處?關於 Python 的最常見的問題之一是「如何從 Python 腳本中生成獨立的可執行文件?」 PyInstaller 一直是對此最好的答案之一。

PyInstaller 3.3 的功能PyInstaller 將 Python 應用程序打包到單目錄或單文件的可執行文件中,捆綁任何所需的第三方庫,並可與絕大多數常見的庫和框架配合使用。

PyInstaller 3.3 中最大的改進是對 Python 3.6 的支持,因為鑒於 Python 3.6 已經發布這確實是必要的

PyInstaller 3.3 還包括一個更廣泛兼容的引導載入程序,適用於 Windows 可執行文件,並擴展了對捆綁常見庫(如 QT、GTK +、NumPy 和 Django )的支持。

PyInstaller 在不久之後可能添加的一個功能是交叉打包,例如,在 Windows 上創建 Mac 兼容的應用程序。你需要在要部署的同一平台上運行該 PyInstaller ,無論是 Windows、Mac 還是 Linux 。

何處下載 PyInstaller 3.3 ?

PyInstaller 可以通過 Python Package Index 安裝,也可通過 Python 的 pip 工具安裝:pip install pyinstaller 。對於那些需要自己編譯引導載入程序的人,源碼可以在 GitHub 上找到,但對多數人而言是不需要這麼做的。

Python必備之Python Build Reasonableness

Python PBR 主要用於何處?

Setuptools 是用於打包 Python 項目的標準的 Python 問題子系統。管理特定項目的 Setuptools 可能會變得非常繁瑣,特別是在自動生成需求、管理文檔文件或編輯項目貢獻者數據時。

Python PBR 的功能PBR, Python Build Reasonableness 的縮寫,是以一致的方式用於管理 Setuptools 包的庫。它可以自動化許多 Setuptools 打包的設置,例如版本號、生成作者和 ChangeLog 文件,以及生成 Sphinx 風格的文檔。PBR 最初是作為 OpenStack 項目的一部分開發的,但現在你所使用 PBR 中維護的內容與 OpenStack 已經沒有任何聯繫了。

哪裡可以下載 Python PBR ?

PBR 在 Python Package Index 上可以找到,並且可以和 pip 一起安裝,只需要輸入 pip install pbr 即可。 源碼可在 GitHub 上下載。

Python 必備之 WxPython

Python學習群:593088321

WxPython 主要用於何處?想要實現跨平台桌面應用程序的 Python 開發人員可以從多個工具包中進行選擇。 WxPython,是 WxWidgets 庫的一個封裝,使用了其所支持主機平台的原生 UI 元素,包括 Windows、Mac、Linux 和其他類 Unix 操作系統。

WxPython 4.0 的功能早期版本的 WxPython 被放棄了是由於其傳統的設計決策,使其變得越來越慢,而且不太適合使用。為了解決這個問題,WxPython 的開發人員對 WxPython 的 4.0 分支做了重大改變。

目標是允許開發人員更快地上手 WxPython ,並且使通過它創建的框架和應用程序更加高性能和易維護。然而,為了使用 WxPython 4.0 ,任何現有的使用 WxPython 項目都需要修改。

何處可以下載 WxPython 4.0 ?WxPython 4.0 官方版本依然是 beta 版。它可以在 Python Package Index 上找到,即通過 pip install wxpython 命令。在正式發布前它可能會更新數次,注意經常檢查更新。

那些想直接破解的人可以查看 GitHub 上的代碼庫。請注意,WxPython 的 4.0 分支以 「Phoenix」 代號進行標記的,以使其與早期版本不同。

Python 必備之 Mypy

Mypy 主要用於何處?Python 的動態性既是一種福音,也是一種煩惱,對於快速構建軟體非常棒,但是當代碼難以推理、測試和調試時,並不是很棒。Mypy 在編譯時向 Python 添加靜態類型檢查,使 Python 程序更加一致和可維護,並且不會增加運行時開銷。

Mypy 0.530 的功能Mypy 0.530 添加了不同協議的支持,該協議是用於 Python 子類的目前實驗性類型的功能。它還在僅用於包含特定類型的對象的字典中添加 「TypedDict」 類型,並且可以逐個對文件進行更嚴格的類型檢查的選項。

Python學習群:593088321

推薦閱讀:

python有木有類似cplusplus cppreference 這種網站?
python爬蟲如何深入學習?
怎樣從零開始用 Python 寫一個貪吃蛇?
<python/php>關於千萬級別數量的數據轉移更好的方案?
python3.5 pip安裝庫,無法找到vcvarsall.bat錯誤?裝VS、改源碼無效

TAG:Python | Python库 | python第三方库 |