【问题标题】:Get date-time of directory and compare获取目录的日期时间并进行比较
【发布时间】:2013-09-11 13:36:56
【问题描述】:
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 秒?
【问题讨论】:
标签:
python
time
compare
directory
seconds
【解决方案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
现在您已经在变量hours、minutes 和seconds 中存储了时间差,您可以检查seconds >= X 是否是您希望等待的秒数。
希望对你有帮助
【解决方案2】:
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 会给你打发时间。