对于现有的有效文件,上次修改时间函数返回0.0 - “getmtime”+“stat.st__mtime”

时间:2017-12-13 17:58:08

标签: python python-3.x python-os

我有一个缓存引擎,用于检查文件的最后一个模式时间。

引擎运行良好,但最近我的测试开始失败,只有一个特定的文件。

即使文件存在且具有上次修改时间,getmtime()函数(或stat.st_mtime)也都返回零。文件夹中的所有其他文件都失败,返回与最后一个mod日期时间对应的预期浮点纪元时间值。

关于可能是什么原因的任何想法? 文档没有提到关于零返回值的任何内容,只是它返回一个浮点数。什么会导致python返回0.0?

鉴于现有filepath(请参阅下面的属性):

>>> os.path.exists(filepath)
True
>>> os.path.getmtime(cache_filepath)
0.0
>>> os.stat(filepath)
os.stat_result(st_mode=33206, st_ino=1125899907202573, st_dev=2898260115, st_nlink=1, st_uid=0, st_gid=0, st_size=36, st_atime=0, st_mtime=0, st_ctime=1508902786) 
>>> os.stat(filepath).st_time
0.0

filepathproperties

1 个答案:

答案 0 :(得分:2)

我的错误 - 有问题的文件实际设置为0.0 mtime: file properties

PS:旁注 - 我之所以这样做是因为let foo = DescriptiveOptional<String>.success("Value") let bar = String.self~?.success("Value") 每当得到一个0.0值时就失败了,结果证明这是Python 3的错误: https://bugs.python.org/issue29097