Python内置模块--time

time.time() 返回时间戳(timestamp), 表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。

time.localtime() 生成时间元祖(struct_time),如果没有传入参数,就将当前时间自动传入

>>> time.localtime()
time.struct_time(tm_year=2021, tm_mon=3, tm_mday=26, tm_hour=23, tm_min=57, tm_sec=37, tm_wday=4, tm_yday=85, tm_isdst=0)

其中元素分别代表
索引(Index) 属性(Attribute) 值(Values) 0 tm_year(年) 比如2011 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(weekday) 0 - 6(0表示周日) 7 tm_yday(一年中的第几天) 1 - 366 8 tm_isdst(是否是夏令时) 默认为-1

>>> time.localtime(time.time())
time.struct_time(tm_year=2021, tm_mon=3, tm_mday=26, tm_hour=23, tm_min=59, tm_sec=34, tm_wday=4, tm_yday=85, tm_isdst=0)
>>> time.localtime(111111111)
time.struct_time(tm_year=1973, tm_mon=7, tm_mday=10, tm_hour=8, tm_min=11, tm_sec=51, tm_wday=1, tm_yday=191, tm_isdst=0)

time.gmtime() 和localtime()方法类似,gmtime()方法是将一个时间戳转换为UTC时区(0时区)的struct_time

>>> time.gmtime(time.time())
time.struct_time(tm_year=2021, tm_mon=3, tm_mday=26, tm_hour=16, tm_min=0, tm_sec=59, tm_wday=4, tm_yday=85, tm_isdst=0)

time.mktime() 将一个struct_time转化为时间戳

>>> time.mktime(time.localtime())
1616774641.0

time.strftime() 把一个代表时间的元组或者struct_time(如由time.localtime()和time.gmtime()返回)转化为格式化的时间字符串。如果t未指定,将传入time.localtime()

>>> time.strftime('%y-%m-%d_%H:%M:%S')
'21-03-27_00:06:35'

以下为格式化的时间字符串定义

| 指令 | 意义 | 注释 |

%a本地化的缩写星期中每日的名称。
%A本地化的星期中每日的完整名称。
%b本地化的月缩写名称。
%B本地化的月完整名称。
%c本地化的适当日期和时间表示。
%d十进制数 [01,31] 表示的月中日。
%H十进制数 [00,23] 表示的小时(24小时制)。
%I十进制数 [01,12] 表示的小时(12小时制)。
%j十进制数 [001,366] 表示的年中日。
%m十进制数 [01,12] 表示的月。
%M十进制数 [00,59] 表示的分钟。
%p本地化的 AM 或 PM 。(1)
%S十进制数 [00,61] 表示的秒。(2)
%U十进制数 [00,53] 表示的一年中的周数(星期日作为一周的第一天)。 在第一个星期日之前的新年中的所有日子都被认为是在第 0 周。(3)
%w十进制数 [0(星期日),6] 表示的周中日。
%W十进制数 [00,53] 表示的一年中的周数(星期一作为一周的第一天)。 在第一个星期一之前的新年中的所有日子被认为是在第 0 周。(3)
%x本地化的适当日期表示。
%X本地化的适当时间表示。
%y十进制数 [00,99] 表示的没有世纪的年份。
%Y十进制数表示的带世纪的年份。
%z时区偏移以格式 +HHMM 或 -HHMM 形式的 UTC/GMT 的正或负时差指示,其中H表示十进制小时数字,M表示小数分钟数字 [-23:59, +23:59] 。
%Z时区名称(如果不存在时区,则不包含字符)。
%%字面的 '%' 字符。

time.strptime() 把一个格式化时间字符串转化为struct_time。实际上它和strftime()是逆操作。

>>> time.strptime('21-03-27_00:06:35', '%y-%m-%d_%H:%M:%S')
time.struct_time(tm_year=2021, tm_mon=3, tm_mday=27, tm_hour=0, tm_min=6, tm_sec=35, tm_wday=5, tm_yday=86, tm_isdst=-1)

time.asctime() 把一个表示时间的元组或者struct_time表示为这种形式:‘Sat Mar 27 00:13:16 2021’。如果没有参数,将会将time.localtime()作为参数传入。

>>> time.asctime()
'Sat Mar 27 00:13:16 2021'

time.ctime() 把一个时间戳转化为time.asctime()的形式。如果参数未给或者为None的时候,将会默认time.time()为参数。它的作用相当于 time.asctime(time.localtime(secs))

>>> time.ctime()
'Sat Mar 27 00:11:07 2021'

time.sleep() 当前线程推迟运行指定时间,秒为单位

奉上一张时间转换图(从Alex那里偷来的哈哈哈)
在这里插入图片描述

关于 time 模块的更多方法和属性详见官网–time模块

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值