Python学习:python time模块之time.gmtime([secs])函数和time.localtime([secs])函数

本文介绍了Python中time模块的gmtime()和localtime()函数,详细阐述了它们的用途和区别。gmtime()用于将时间转换为UTC的struct_time,而localtime()则转换为本地时间,包括 DST(夏令时)的处理。通过实例解析了如何传入参数和使用默认当前时间。此外,还提到了struct_time类,它是gmtime()和localtime()返回值的类型,具备named tuple接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

time.gmtime([secs])

将以自 epoch 开始的秒数表示的时间转换为 UTC 的 struct_time ,其中 dst 标志始终为零。 如果未提供 secs 或为 None ,则使用 time() 所返回的当前时间。 一秒以内的小数将被忽略。

应用例子

1.time.gmtime()

未传入任何参数时,返回当前UTC时间。北京时间2020/12/09 15:06:30

# 导入time模块
import time


# 未传入sec参数
print(time.gmtime())
输出:
time.struct_time(tm_year=2020, tm_mon=12, tm_mday=9, tm_hour=7, tm_min=6, tm_sec=30, tm_wday=2, tm_yday=344, tm_isdst=0)

2.time.gmtime(1)

传入secs,以自 epoch 开始的秒数表示的时间转换为 UTC 的 struct_time

# 导入time模块
import time


# 传入secs参数
print(time.gmtime(1))
输出
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, 	tm_min=0, tm_sec=1, tm_wday=3, tm_yday=1, tm_isdst=0)

time.localtime([secs])

与 gmtime() 相似但转换为当地时间。如果未提供 secs 或为 None ,则使用由 time() 返回的当前时间。当 DST 适用于给定时间时,dst标志设置为 1 。

应用例子

1.time.localtime()

未传入任何参数时,返回当前本地时间。北京时间2020/12/09 15:06:30

# 导入time模块
import time


# 未传入sec参数
print(time.localtime())
输出:
time.struct_time(tm_year=2020, tm_mon=12, tm_mday=9, tm_hour=15, tm_min=6, tm_sec=30, tm_wday=2, tm_yday=344, tm_isdst=0)

2.time.localtime(1)

传入secs,以自 epoch 开始的秒数表示的时间转换为当地的 struct_time

# 导入time模块
import time



# 传入secs参数
print(time.localtime(1))
输出:
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=1, tm_wday=3, tm_yday=1, tm_isdst=0)

class time.struct_time

返回的时间值序列的类型为 gmtime() 、 localtime() 和 strptime() 。它是一个带有 named tuple 接口的对象:可以通过索引和属性名访问值。 存在以下值:

索引属性属性
0tm_year(例如,1993)
1tm_monrange [1, 12]
2tm_mdayrange [1, 31]
3tm_hourrange [0, 23]
4tm_minrange [0, 59]
5tm_secrange [0, 61]; 见 strftime() 介绍中的 (2)
6tm_wdayrange [0, 6] ,周一为 0
7tm_ydayrange [1, 366]
8tm_isdst0, 1 或 -1;如下所示
N/Atm_zone时区名称的缩写
N/Atm_gmtoff以秒为单位的UTC以东偏离

请注意,与C结构不同,月份值是 [1,12] 的范围,而不是 [0,11]。

在调用 mktime() 时, tm_isdst 可以在夏令时生效时设置为1,而在夏令时不生效时设置为0。 值-1表示这是未知的,并且通常会导致填写正确的状态。

当一个长度不正确的元组被传递给期望 struct_time 的函数,或者具有错误类型的元素时,会引发 TypeError 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值