0
import os

print(str(os.stat('/home/zarkopafilis/Python/test2.py').st_mtime))

返回较大的值,例如:1378906011.07

在 5 秒内我运行:

import datetime
now = datetime.datetime.now()
print(str(now.second))

它返回:1-5(取决于它的运行速度)

如何检查文件的创建时间并查看脚本运行时间是否已经过了 X 秒?

4

2 回答 2

1

您可以执行以下操作:

>>> time_diff = time.time() - os.stat('/home/zarkopafilis/Python/test2.py').st_mtime                                                                   
>>> hours, rest = divmod(time_diff, 3600)                                                                                                    
>>> minutes, seconds = divmod(rest, 60)                                                                                                      
>>> print hours                                                                                                                              
0.0
>>> print minutes
1.0
>>> print seconds
51.3503739834

现在您已经在 variables 中存储了时间差,hours您可以检查X 是否是您有兴趣等待的秒数。minutessecondsseconds >= X

希望这可以帮助

于 2013-09-11T13:55:22.317 回答
0

1378906011.07是表示从纪元(1970 年 1 月 1 日)开始的秒数。

您可以使用以下命令查看时间datetime.datetime.fromtimestamp

>>> import datetime
>>> datetime.datetime.fromtimestamp(1378906011.07)
datetime.datetime(2013, 9, 11, 22, 26, 51, 70000)
>>> print(datetime.datetime.fromtimestamp(1378906011.07))
2013-09-11 22:26:51.070000

用于time.time()获取当前日期时间作为第二个:

>>> time.time()
1378906919.446

>>> t1 = time.time()
>>> t2 = time.time() # a few second later
>>> t2 - t1
18.51900005340576

time.time() - os.stat('/home/zarkopafilis/Python/test2.py').st_mtime会给你过去的时间。

于 2013-09-11T13:38:47.680 回答