我需要確定誰提出異常來處理更好的str錯誤,有沒有辦法?如何確定哪些函數調用在Python中引發異常?
看看我的例子:
try:
os.mkdir('/valid_created_dir')
os.listdir('/invalid_path')
except OSError, msg:
# here i want i way to identify who raise the exception
if is_mkdir_who_raise_an_exception:
do some things
if is_listdir_who_raise_an_exception:
do other things ..
我怎麼能解決這個問題,在Python?
+1但不是stk [0] [3]返回失敗的函數嗎? – luc 2010-03-04 15:06:20
@luc,這將是來源,但只有在可用時;在http://docs.python.org/library/traceback.html?highlight=traceback#traceback.extract_tb中引用文檔,「」「預處理的」堆棧跟蹤條目是一個四元組(文件名,行號,函數名,文本)'表示通常爲堆棧軌跡打印的信息,文本是一個前導和尾隨空白字符串,如果源不可用,則爲無。「」「正如你看到的'function_name'是在元組中的索引2處。 – 2010-03-04 15:13:53
試試/除了嘗試/除了解決方案可能會更好,但在我的情況下我需要處理,什麼函數會引發異常,所以這個答案對我來說是最好的!謝謝:) – 2010-03-04 15:50:57