Python time模块

timePython 里常用的时间模块。

本文给出 时间戳struct_time(时间元组)以及 时间字符串 三者之间的转换关系,便于查阅。


含义

时间戳:自从1970年1月1日午夜(历元)经过多长时间。

时间元组:内含9个数据的元组。

属性
tm_year 2018
tm_mon 1-12
tm_mday 1-31
tm_hour 0-23
tm_min 0-59
tm_sec 0-59
tm_wday 0-6(0是周一)
tm_yday(一年第几天) 1-366
tm_isdst 是否为夏令时,值有:1(夏令时)、0(不是夏令时)、-1(未知),默认 -1


时间字符串:如”2018-03-12”的格式化时间字符串。

python中常用格式化符号:

符号 含义
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)


相关函数

time.time():用于获取当前时间戳 ,单位为秒
time.localtime():用于将时间戳转为时间元组
time.strftime():用于将时间元组转换为时间字符串
time.strptime():用于将时间字符串转换为时间元组
time.mktime():用于将时间元组转换为时间戳
time.struct_time():用于构建时间元组


例子

> In[0]:time.time()
> Out[0]: 1520840471.7365973
> In[1]:time.localtime(1520840471)
> Out[1]:time:struct_time(tm_year=2018, tm_mon=3, tm_mday=12, tm_hour=15, tm_min=41, tm_sec=11, tm_wday=0, tm_yday=71, tm_isdst=0)
> In[2]: time.strftime('%Y-%m-%d', time.localtime(1520840471))
> Out[2]: '2018-03-12'
> In[3]: time.strptime('2018-03-12','%Y-%m-%d')
> Out[3]: time:struct_time(tm_year=2018, tm_mon=3, tm_mday=12, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=71, tm_isdst=-1)
> In[4]: time.mktime(time.strptime('2018-03-12','%Y-%m-%d'))
> Out[4]: 1520840000.0

总结

struct_time(时间元组)作为转换的枢纽,能够便捷转换为 时间戳时间字符串

时间戳 <—————> struct_time(时间元组) <—————>时间字符串

Python time模块_第1张图片

你可能感兴趣的:(python)