最佳答案
从 stat()
调用获取的修改时间转换为 datetime
对象的最惯用/有效的方法是什么?我想出了以下(python3) :
from datetime import datetime, timedelta, timezone
from pathlib import Path
path = Path('foo')
path.touch()
statResult = path.stat()
epoch = datetime(1970, 1, 1, tzinfo=timezone.utc)
modified = epoch + timedelta(seconds=statResult.st_mtime)
print('modified', modified)
看起来是一回合,有点令人惊讶,我必须硬编码的 Unix 时代在那里。还有更直接的方法吗?