time库的使用
time库时间的表示
浮点数时间:从1970年1月1日0时0分0秒开始计时,范围在1970年到2038年。格式如1612753336.870867
struct_time格式:Python中用于保存时间对象、带有属性标签的数据类型,是一个元组,形如time.struct_time(tm_year=2021, tm_mon=2, tm_mday=8, tm_hour=3, tm_min=2, tm_sec=17, tm_wday=0, tm_yday=39, tm_isdst=0)
字符串时间:便于用户查看的字符串形式时间,如:Mon Feb 8 11:02:17 2021
时间元组struct_time
序号 | 属性名 | 字段 | 值 |
---|---|---|---|
0 | tm_year | 年 | 四位整数 |
1 | tm_mon | 月 | [1,12] |
2 | tm_mday | 日 | [1,31] |
3 | tm_hour | 时 | [0,23] |
4 | tm_min | 分 | [0,59] |
5 | tm_sec | 秒 | [0,61] |
6 | tm_wday | 一周的第几日 | [0,6] |
7 | tm_yday | 一年的第几日 | [0,366] |
8 | tm_isdst | 夏令时 | 0:DST,1:非DST,-1:随系统 |
可以通过属性名和字段获取struct_time的信息,如:
t=time.localtime()
print(t.tm_hour)
print(t[3])
输出的都是 小时 字段
time库的函数
时间获取
time():返回从计时起始点到当前时间的时间戳,是一个浮点数
gmtime():返回一个UTC时区的struct_time,也可以提供一个时间戳参数将其转变为struct_time
localtime():返回一个当地时区的struct_time,也可以提供一个时间戳参数将其转变为struct_time
mktime():将struct_time转变为一个时间戳
asctime():返回一个字符串表示的当地时间,可选参数struct_time
ctime():返回一个字符串表示的当地时间,可选参数是时间戳,asctime()和ctime()都没有参数是两者是一样的
时间格式化
strftime():将struct_time转变为字符串,语法为:time.strftime(格式字符串, struct_time)
一般用法为:time.strftime("%Y-%m-%d %H:%M:%S",t),t是struct_time类型
格式化 | 说明 |
---|---|
%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 | 本地简化星期名称(Mon-Sun) |
%A | 本地完整星期名称(Monday-Sunday) |
%b | 本地简化的月份名称(Jan-Dec) |
%B | 本地完整的月份名称(January-December) |
%c | 本地相应的日期表示和时间表示 |
%j | 年内的一天(001-366) |
%p | 本地A.M.或P.M.的等价符 |
%U | 一年中的星期数(00-53)星期天为星期的开始 |
%w | 星期(0-6),星期天为星期的开始 |
%W | 一年中的星期数(00-53)星期一为星期的开始 |
%x | 本地相应的日期表示 |
%X | 本地相应的时间表示 |
%Z | 当前时区的名称,如“中国标准时间” |
%% | %号本身 |
strptime():将字符串转变为struct_time,语法为:time.strptime(struct_time,格式字符串 )
程序计时
monotonic():返回一个计时时间,两次调用之差是间隔时间,单位为秒
pref_counter():返回一个精确计时时间,含起始和终止的所有时间
process_time():返回一个进程计时时间,不含进程sleep()时间
sleep():将线程挂起若干秒,参数是浮点数,如sleep(6.3)
上一篇: windows驱动开发-resources获取与使用
下一篇: 关于“字符设备注册函数”的总结