You need to enable JavaScript to run this app. 系统时钟为UTC时如何用Python time模块获取经DST调整的本地时间
优惠活动
大模型
产品
解决方案
定价
更多

系统时钟为UTC时如何用Python time模块获取经DST调整的本地时间

仅用Python time模块获取带夏令时调整的本地时间

你遇到的localtime返回UTC的问题,原因是系统默认时区配置指向UTC,只需要手动指定目标本地时区后重载时区配置即可,全程无需用到datetime模块。

具体操作步骤:

  • 先修改系统环境变量TZ为你目标时区的标准标识符,中国大陆可填Asia/Shanghai,美东时区可填America/New_York
  • 调用time.tzset()方法重载时区配置,该方法会自动加载对应时区的规则,包含夏令时的切换逻辑
  • 直接调用time.localtime()即可返回经夏令时调整后的本地时间,返回的struct_time结构体中tm_isdst值为1表示当前已应用夏令时,为0表示未应用。

示例代码:

import time
import os

# 替换为你所在地区的时区标识符
os.environ['TZ'] = 'Asia/Shanghai'
# 重载时区配置,加载夏令时规则
time.tzset()

# 获取带夏令时调整的本地时间
adjusted_local_time = time.localtime()
# 格式化输出时间
print(time.strftime("%Y-%m-%d %H:%M:%S", adjusted_local_time))
# 查看夏令时生效状态
print(f"夏令时是否生效:{adjusted_local_time.tm_isdst == 1}")

注意:Windows环境下部分旧版本Python的tzset方法需使用Windows标准时区名,例如中国大陆对应China Standard Time,如使用IANA时区名不生效可替换为对应Windows时区名尝试。

内容的提问来源于stack exchange,提问作者Schorschi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 07:42:03