2010-05-31 38 views
1

我通常寫我的劇本與像個結構試圖提供一個全球性的日誌記錄功能

#!/usr/bin/python 

import stuff 

def do_things(): 
    print "FOO" 

def main(): 
    do_things() 

if __name__ == "__main__": 
    main() 

我已經是我想有一個是全局定義的記錄功能和我「米不是問題真的很確定如何做到這一點,我嘗試了一個裝飾器函數,但是如果我在main中定義它,我不能從腳本中的其他函數調用它,這看起來應該很容易做,但不是我有經驗的東西。

+2

標準庫中的日誌記錄模塊有什麼問題嗎? – geoffspear 2010-05-31 03:10:58

回答

4
import logging 

Python的logging庫應該滿足你r要求。

+0

我沒有看過日誌記錄庫,但由於某種原因,我認爲我必須創建一個日誌記錄對象,並將其傳遞給我的函數,因爲我稱它們而不是將其用作全局對象。謝謝:) – Gekitsuu 2010-05-31 11:40:53

+1

只要你在需要它的每個模塊中導入logging,你就可以從'logging'命名空間內訪問你的'logger'。 – Johnsyweb 2010-05-31 12:11:24

+1

對不起,花了這麼長的時間來回應它確實完美地解決了我的需求! – Gekitsuu 2010-09-28 21:23:08