系统:Windows 7
编辑器:JetBrains PyCharm Community Edition 2018.2.2 x64
Part 1:场景说明这个系列讲讲Python对时间及日期的操作
今天讲讲获取文件的修改时间
涉及模块:os,datetime,time
- 对一些列文件进行处理,需要有个日志,记录文件的一些信息
- 如下图文件修改时间,2022/5/28 10:18
import datetime
import time
import os
file_address = r"D:**example3.txt"
modify_time = os.path.getmtime(file_address)
print("文件修改时间1", modify_time)
file_modify_time = time.ctime(modify_time)
print("文件修改时间2", file_modify_time)
# 返回的是utc时间
file_modify_time = time.gmtime(modify_time)
print("文件修改时间3", file_modify_time)
file_modify_time = datetime.datetime(*file_modify_time[:6])
print("文件修改时间4", file_modify_time)
hours_n = 8
hours_delta = datetime.timedelta(hours=hours_n)
bj_file_modify_time = file_modify_time + hours_delta
print("文件修改时间5", bj_file_modify_time)
图2 代码截图
图3 执行结果
Part 3:部分代码说明
- os.path.getmtime(文件路径)获取文件的修改时间,该方法返回的是一个实数,表示从时间原点(1970年1月1日)到文件修改时间经历的秒数
- time.ctime(时间戳)把一个时间戳(按秒计算的浮点数)转化为time.asctime()的形式,格式为字符串
- time.gmtime(时间戳)把一个时间戳(按秒计算的浮点数)转化为time.struct_time的形式,这里需要注意,默认转换的为UTC时区(0时区)的时间,与北京时间相差8个小时
- datetime.datetime(*file_modify_time[:6])格式转换,转换为datetime,且只保留年月日时分秒
- 最后得到的时间为2022-05-28 10:18:54,与文件修改时间一致
本文为原创作品,欢迎分享朋友圈
长按图片识别二维码,关注本公众号
Python 优雅 帅气
[[os.path.getmtime]] [[时间戳]] [[time.gmtime]]



