使用 Git repo 安裝 Python 套件

最近,隨著一些在維護 Python 專案的規模越來越大,正所謂合久必分,為了讓專案主要的功能可以有效率地使用系統資源,我們計劃將這些 Python 專案依據不同的功能拆開。

拆專案的過程中,免不了會有模組間的依賴問題,例如一些 Utility 類的工具、定義的資訊等等。

不同專案共用模組

除了怎麼拆比較乾淨之外,我們也要考慮「定版」的問題,因為當被依賴方(如 Utility)更新的時候,應該由依賴方(如 Project A)主動更新所引用之版號,否則被 Utility 一旦更新就有可能直接讓所有的依賴方 Project A 和 Project B 壞掉。

今天我們就來探討將共用模組拆分出來的主要邏輯!

繼續閱讀

Python Pydantic 簡介:和 Dataclass 的區別,Alias 的簡易用法

當寫慣了 C++、Java、TypeScript 這類 Strong Typing 的語言時,想要在 Python 處理型別總會在剛開始不太習慣,因為 Python 雖然提供了 Typing,但是僅能「提示」,而不會真的拋出錯誤。

此時可以嘗試看看 Pydantic 這樣的 Library,在定義資料的時候能較為強制限制資料的格式。此篇簡單記錄 Pydantic 的基本用法,為何要用,又和原生的 Dataclass 有什麼區別。

繼續閱讀