【发布时间】:2012-01-07 11:30:34
【问题描述】:
像file("foo.txt") 这样打开的文件有关于文件修改时间的任何信息吗?
基本上我想知道文件是否在某个时间后被修改或替换,但是如果文件在检查修改时间和打开文件之间被替换,那么你的信息不准确。
我如何确定?
谢谢。
更新
@rubayeet:感谢您的回答 (+1),我实际上没有想到这一点。但是……修改时间变了怎么办?也许我再次重新加载文件。但是,如果它改变了那个时间呢?如果文件被定期触摸,我可能会永远陷入循环!我真正想要的是一种只获得打开文件句柄和修改时间的方法,而没有潜在的无限循环。
PS 你给出的答案实际上对我的目的来说已经足够好了,因为文件不会定期更改,我现在普遍感兴趣。
更新 2
通过思考之前的更新(并进行一些试验),我意识到仅仅知道文件打开时的文件修改时间并没有多大用处,就像在阅读时修改文件一样,您可以拥有部分或全部您读入的内容中的修改数据,因此您必须打开并读取/处理整个文件,然后再次检查 mtime(根据@rubayeet 的回答),看看您是否有过时的数据。
【问题讨论】:
标签: python file last-modified