使用 zipfile 模块时,我发现它的工作原理有些奇怪。
我正在压缩一个文件,最后修改时间是:13:40:31 (HH:MM:SS) 当我压缩和解压缩文件时,它的最后修改时间是 13:40:30(丢失 1 秒)
围绕这个做一些测试,我使用 ZipInfo 对象手动将上次修改时间设置为 13:40:31,但仍然得到 13:40:30。
我还尝试设置为 13:40:41,然后我得到了 13:40:40。
尝试将任何其他值设置为秒,它工作正常,所以如果我将其设置为 13:40:32,解压缩文件时就可以了。
对此有任何线索吗?我错过了什么吗?
操作系统:Windows 10(64 位)Python:3.7
测试只需压缩任何文件然后解压缩并比较上次修改时间
file = 'testfile.txt'
zf = zipfile.ZipFile(file='test.zip', mode='w', compression=zipfile.ZIP_DEFLATED)
info = zipfile.ZipInfo(file,
date_time=(2020, 9, 23, 13, 40, 31))
zf.writestr(info, open(file, 'r').read(), zipfile.ZIP_DEFLATED, 6)
zf.close()
提前致谢!