我無法得到這個工作正常(顯然) - 我幾乎沒有和我有它爲什麼不工作的一個好主意 - 只是不知道如何使它發揮作用。寫作蟒蛇錯誤到一個txt文件
這是假設試圖文件讀入存儲器中,如果失敗,轉移到「除」的代碼塊的條款(這部分是「咄」)。錯誤文件打印:「< main .DebugOutput instance at 0x04021EB8>」。我想要它做的是打印實際的錯誤。像FileIOError或TraceBackError或其它任何錯誤文件。這只是開始階段,我打算添加日期戳等事項並添加它,而不是寫/創建 - 我只需要將打印到文件的實際錯誤。建議嗎?
import os, sys
try:
myPidFile = "Zeznadata.txt"
myOpenPID_File = open(myPidFile, "r") #Attempts to open the file
print "Sucessfully opened the file: \"" + myPidFile + "\"."
except:
print "This file, \"" + myPidFile + "\", does not exist. Please check the file name and try again. "
myFileErr = open("PIDErrorlog.txt", "w")
myStdError = str(sys.stderr)
myFileErr.write(myStdError)
myFileErr.close()
print "\nThis error was logged in the file (and stored in the directory): "
有作爲Python中的TraceBackError沒有這樣的事情(除非你把它定義)。出現錯誤時,堆棧跟蹤將被打印出來。 – stefanw 2010-01-25 20:02:25
日誌記錄答案是去的最佳途徑,再加上處理個別例外要好得多。 – Finglas 2010-01-25 20:19:06