2013-01-25 243 views
2

我必須編寫一個測試用例,因爲我使用sikuli,它在Python腳本上工作, 這裏我無法在文本文件中編寫本地系統時間。如何使用Python腳本在文本文件或日誌文件中寫入時間(本地系統時間)?

import time; 

localtime = time.localtime(time.time()) 
inp=file("C:\\Users\\%path%\\Log.txt", 'w') 
inp.write('************** Full Process ****************\n') 
inp.write('Local current time :', localtime) incorrect 

這裏我創建一個文本文件裏,還我必須寫時間 ,我不知道怎麼寫的代碼。

回答

5

這是非常正確的,但你有一個錯誤寫時間:

inp.write('Local current time :', localtime) 

如果要格式化像一個字符串,你需要使用%操作:

inp.write('Local current time : %s' % localtime) 

此外,只打印Time對象將打印一個非常奇怪的字符串。您希望以更方便的方式編寫日期,例如YYYY/MM/DD - HH:MM:SS。你不喜歡這樣:

localtime.strftime ('%Y/%m/%d - %H:%M:%S') 

所以你的一段代碼將是:

import time 

localtime = time.localtime(time.time()) 
timestring = time.strftime ('%Y/%m/%d - %H:%M:%S') 
inp=file("Log.txt", 'w') 
inp.write('************** Full Process ****************\n') 
inp.write('Local current time : %s' % timestring) 
+0

** **真棒,謝謝你,這個工作.. Thanxs很多 –

+0

但是當我試圖在同一代碼的不同位置使用相同的百分比字符串,我不知道爲什麼/如何對所有事件進行計時,13秒之前的時間等於13秒之後的時間,m在說HH:MM:SS。 –

+0

當然是一樣的。該變量的值在這一行中設置:'localtime = time.localtime(time.time())'。如果你想獲得新的時間,你必須再次調用'time.time()'。 –

相關問題