本帖最後由 magier 於 17-3-13 10:45 編輯
自訂函數的部分我認為是可以的
現在我已經沒有再用eleader了
不過以前在使用的時候
我有自己寫過可以自己印debug printing 的 class
這邊列出來可以給你參考一下
- class DbgPrint_t:
- dbgtxt = ""
- fp = ""
- def __init__(self, filepath):
- self.filepath = filepath
- def writeline(self, txt):
- self.dbgtxt += (txt + "\n")
- def writearray(self, t_array, s_array):
- tlen = len(t_array)
- slen = len(s_array)
- l = tlen if (tlen < slen) else slen
- for i in reversed(range(l)):
- self.dbgtxt += str(t_array.data[i]) + "," + str(s_array.data[i]) + "\n"
- def writearrays(self, t_array, *s_array):
- tlen = len(t_array)
- arrayno = len(s_array)
- l = tlen
- for i in range(arrayno):
- l = l if (l < len(s_array[i])) else len(s_array[i])
- for i in reversed(range(l)):
- self.dbgtxt += str(t_array.data[i]) + ","
- for j in range(arrayno):
- self.dbgtxt += str(s_array[j].data[i]) + ","
- self.dbgtxt += "\n"
- def flush(self):
- self.fp = open(self.filepath, 'w')
- self.fp.write(self.dbgtxt)
- self.fp.close()
- self.dbgtxt = ""
- dbg = DbgPrint_t("D:\out.csv")
- dbg.writeline("time,date,close,high")
- dbg.writearrays(t, d, c, h)
- dbg.flush()
複製代碼
大致說明一下:
我定義一個class有幾個function call
1. DbgPrint_t() 也就是 __init__() , 用來指定輸出的檔案
2. writeline() 在檔案中打印一行
3. writearrays() 在檔案中印出數個 arrays
4. flush() 存檔
|