2013-01-25 223 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()'。 –

相关问题