1.os.path.getctime
获取文件创建时间
函数原型:def getctime(filename: StrOrBytesPath) -> float: ...
实例:
c_time = os.path.getctime("main.py")
print(c_time)
结果:
这里转换出来的是时间戳(秒数),使用在线工具转换一下。
可以看到与该文件的创建时间是对应的。
2.os.path.getmtime
获取文件修改时间
函数原型:def getmtime(filename: StrOrBytesPath) -> float: ...
实例:
m_time = os.path.getmtime("main.py")
print(m_time)
结果:
3.os.path.getatime
获取文件访问时间
函数原型:def getatime(filename: StrOrBytesPath) -> float: ...
实例:
a_time = os.path.getatime("main.py")
print(a_time)
结果:
4.time.localtime
格式化时间戳为本地的时间,返回结果为一个元组(tuple)
函数原型:def localtime(seconds=None):
将时间戳转换为本地时间,本地时间的格式为 tm_year,tm_mon,tm_mday,tm_hour,tm_min, tm_sec,tm_wday,tm_yday,tm_isdst
实例:
c_time = os.path.getctime("main.py")
print(c_time)
cl_time = time.localtime(c_time)
print(cl_time)
结果:
可以看到这里转换出来了很多参数,参数介绍如下:
int tm_sec; /* 秒 – 取值区间为[0,59] */
int tm_min; /* 分 - 取值区间为[0,59] */
int tm_hour; /* 时 - 取值区间为[0,23] */
int tm_mday; /* 一个月中的日期 - 取值区间为[1,31] */
int tm_mon; /* 月份(从一月开始,0代表一月) - 取值区间为[0,11] */
int tm_year; /* 年份,其值等于实际年份减去1900 */
int tm_wday; /* 星期 – 取值区间为[0,6],其中0代表星期一,1代表星期二,以此类推 */
int tm_yday; /* 从每年的1月1日开始的天数 – 取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推 */
int tm_isdst; /* 夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的时候,tm_isdst为0;不了解情况时,tm_isdst()为负。
5.time.strftime
格式化时间,返回以可读字符串表示的当地时间
函数原型:def strftime(format, p_tuple=None):
返回的时间根据参数format来决定,如果format为空,则返回当前时间。
format格式如下:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身
实例:
print(time.strftime("%Y-%m-%d %H:%M:%S %A"))
结果:
如果p_tuple非空,则将p_tuple的内容转化为时间。
c_time = os.path.getctime("main.py")
print(c_time)
cl_time = time.localtime(c_time)
print(cl_time)
print(time.strftime("%Y-%m-%d %H:%M:%S %A",cl_time))
结果: