我正在嘗試創建一個記錄while循環的每個迭代的輸出的日誌文件,但是我似乎只能捕獲倒數第二行並在其下創建一個空白的新行。Python - 你如何在一個文本文件中寫一個新的行,用於一個while循環的迭代?
我有這樣的代碼:
from glob import glob
import task_prep
import time
import datetime
path = glob('F:\\Transcoder\\staging\\prep\\*.xml')
while len(path) >= 0:
log = open('log_file.txt', 'w')
if int(len(path)):
data = (str(datetime.datetime.utcnow().strftime("%Y-%m-%d %H:%M:%S")) + ': files')
print(data)
log.write(data + '\n')
task_prep.task_prep()
path = glob('F:\\Transcoder\\staging\\prep\\*.xml')
time.sleep(3)
else:
data = (str(datetime.datetime.utcnow().strftime("%Y-%m-%d %H:%M:%S")) + ': no files')
print(data)
log.write(data + '\n')
path = glob('F:\\Transcoder\\staging\\prep\\*.xml')
time.sleep(3)
這是隻覆蓋多數民衆贊成被在第一行寫的一切,但是這是會打印:
2016-12-06 10:25:56: no files
2016-12-06 10:25:59: no files
2016-12-06 10:26:02: no files
2016-12-06 10:26:05: no files
2016-12-06 10:26:08: no files
2016-12-06 10:26:11: no files
2016-12-06 10:26:14: no files
2016-12-06 10:26:17: no files
2016-12-06 10:26:20: no files
2016-12-06 10:26:23: no files
2016-12-06 10:26:26: no files
Process finished with exit code 1
這是被寫在文本文件:
2016-12-06 10:26:23: no files
第1行上的字符串和下面的新行。
我在做什麼錯?
如果你正在打印日誌,你想打開''a'',所以它附加輸出。 – Iluvatar