如何获取文件创建和修改日期/时间?
回答问题 获取文件创建和修改日期/时间的最佳跨平台方法是什么,适用于 Linux 和 Windows? Answers 在 Python 3.4 及更高版本中,您可以使用面向对象的pathlib 模块接口,其中包含大部分 os 模块的包装器。这是获取文件统计信息的示例。 >>> import pathlib >>> fname = pathlib.Path('test.py') >>> asser
·
回答问题
获取文件创建和修改日期/时间的最佳跨平台方法是什么,适用于 Linux 和 Windows?
Answers
在 Python 3.4 及更高版本中,您可以使用面向对象的pathlib 模块接口,其中包含大部分 os 模块的包装器。这是获取文件统计信息的示例。
>>> import pathlib
>>> fname = pathlib.Path('test.py')
>>> assert fname.exists(), f'No such file: {fname}' # check that the file exists
>>> print(fname.stat())
os.stat_result(st_mode=33206, st_ino=5066549581564298, st_dev=573948050, st_nlink=1, st_uid=0, st_gid=0, st_size=413, st_atime=1523480272, st_mtime=1539787740, st_ctime=1523480272)
有关os.stat_result
包含的更多信息,请参阅文档。对于您想要fname.stat().st_mtime
的修改时间:
>>> import datetime
>>> mtime = datetime.datetime.fromtimestamp(fname.stat().st_mtime, tz=datetime.timezone.utc)
>>> print(mtime)
datetime.datetime(2018, 10, 17, 10, 49, 0, 249980)
如果你想在 Windows 上创建时间,或者在 Unix 上最新的元数据更改,你可以使用fname.stat().st_ctime
:
>>> ctime = datetime.datetime.fromtimestamp(fname.stat().st_ctime, tz=datetime.timezone.utc)
>>> print(ctime)
datetime.datetime(2018, 4, 11, 16, 57, 52, 151953)
这篇文章为 pathlib 模块提供了更多有用的信息和示例。
更多推荐
已为社区贡献126475条内容
所有评论(0)