我想爲我們的內部軟件開發過程實現一個python構建包和功能測試包。我的主要目標是實現一個全局/標準記錄器(類似於參考文獻here)和argparser,所有模塊都將在他們的角度包內使用(即構建記錄器和解析器將與測試套件記錄器和解析器不同)。如何實現一個包的標準記錄器和argparser
這是否應該在包的__init__.py
中完成?還有其他方法可以實現嗎?我還沒有看到__init__.py
的真實需求是什麼?也許,這回答了我自己的問題?我寫了很多python模塊和其他應用程序,但從來沒有包/庫。這個概念似乎爲我帶來了新的可能性,比如標準化這些流程。
基本上,總結,我對這些包的目標是:
1)爲消除的參數和/或訪問系統環境一長串的冗餘通過/分析的需要。
2.)通過不同的測試和構建腳本,消除我們過去看到的無數輸出。
3.)提供一個易於使用的自我記錄軟件包。包裝文件的任何建議也會非常有用。 :)
這將使這些包的用戶:
1)輕鬆訪問一組標準的爭論。例如,程序包中的每個模塊(按優先順序)將用標準標誌解析命令行參數,加載配置文件或使用默認值。 2)以標準方式輕鬆記錄錯誤,警告和調試語句。 3)當這些測試/構建模塊被傳遞時,這將最終使得「用戶」(即,沒有編寫模塊的人)能夠以通用的方式運行該測試/構建模塊。
我想我正在尋找一些真正的「Pythonic」實施建議,因爲各種各樣的選項和可能性似乎是壓倒性的。提前致謝。
謝謝。實際上,我現在已經在單獨的選項卡中打開了記錄文檔的確切鏈接。我想我的問題更多地針對包級別的實施建議。我會創建並實例化我的logging.Logger()作爲一個全局的,說'foo = logging.Logger()'?然後,所有導入我的包的模塊都可以通過'import build','foo.info(「使用build logger」)來訪問它? – kevinmm
此外,這將被認爲是'__init __。py'的可接受實踐嗎? – kevinmm