在 Python 中,时间模块的 tzset() 函数基于使用环境变量 TZ 的 re-initialization 设置。 python中时间模块的tzset()方法重置时间转换协议。此时区表示 UTC 时间以西的非 DST 秒,而 altzone 表示 UTC 时间以西的 DST 秒。 TZ 环境变量的常规形式是:
std offset [dst [offset [,start[/time], end[/time]]]]
组件在哪里:
- std and dst:它是由三个或更多字母数字值给出的时区收缩。这些将在python中分散到时间的tzname()函数中。
- offset:在 tzset() 中, 偏移量的形式为:± hh[:mm[:ss]]。这表示本地时间的 value-added 到达 UTC。如果前面带有“-”符号,则时区位于本初子午线以东。否则,它是西方。如果 DST 后没有偏移,则假定夏令时比标准时间早一小时。
- start[/time], end[/time]:显示何时切换到 DST 和从 DST 切换回来。开始日期和结束日期遵循以下格式之一:
- Jn:儒略日 n,其中 n 在 1 到 365 的范围内 (1 <= n <= 365)。在此,我们不计算闰日,所以在所有年份中,2 月 28 日是第 59 天,3 月 1 日是第 60 天。
- n:从零开始的儒略日 (0 <= n <= 365),范围为 0 到 365。在此,我们计算闰日,可以指向 2 月 29 日。
- Mm.n.d: 一年中第 m 月第 n 周的第 d 天 (0 <= d <= 6) (1 <= n <= 5, 1 <= m <= 12,其中第 5 周表示“在月 m”,可能发生在第四周或第五周)。第 1 周是第 d 天出现的第一周。第零天是星期天。
- time:这遵循与偏移量相同的格式,只是其中不允许使用前导符号(“-”或“+”)。如果未给出,则默认时间为 02:00:00。
用法:
time.tzset()
参数:
NA
返回值:
不返回任何值。
注意:虽然在很多情况下,如果我们改变 TZ 环境变量,它可能会影响像 localtime() 这样的函数的输出而不调用 tzset(),但不应依赖这种行为。 TZ 环境变量不应包含空格。
例子1:
Python3
# time.tzset() Function in python
# importin time and os module
import time
import os
# Define TZ environment variable
os.environ['TZ'] = 'EST+05EDT,M4.1.0,M10.5.0'
# reset the time conversion rules
time.tzset()
# print time
print(time.strftime('%X %x %Z'))
# Define TZ environment variable again
os.environ['TZ'] = 'AEST-10AEDT-11,M10.5.0,M3.5.0'
# reset the time conversion rules
time.tzset()
# print time
print(time.strftime('%X %x %Z'))
输出
08:47:24 11/19/21 EST 00:47:24 11/20/21 AEDT
范例2:
Python3
# time.tzset() Function in python
# importin time and os module
import time
import os
# Define TZ environment variable
os.environ['TZ'] = 'UTC'
# reset the time conversion rules
time.tzset()
# print time
print(time.strftime('%X %x %Z'))
# Define TZ environment variable again
os.environ['TZ'] = 'Europe/Amsterdam'
# reset the time conversion rules
time.tzset()
# print time
print(time.strftime('%X %x %Z'))
输出
12:14:00 11/23/21 UTC 13:14:00 11/23/21 CET
范例3:
Python3
# time.tzset() Function in python
# importin time and os module
import time
import os
# Define TZ environment variable
os.environ['TZ'] = 'Australia/Melbourne'
# reset the time conversion rules
time.tzset()
# print time
print(time.strftime('%X %x %Z'))
# Define TZ environment variable again
os.environ['TZ'] = 'Egypt'
# reset the time conversion rules
time.tzset()
# print time
print(time.strftime('%X %x %Z'))
输出
23:14:00 11/23/21 AEDT 14:14:00 11/23/21 EET
相关用法
- Python Wand function()用法及代码示例
- Python Numbers choice()用法及代码示例
- Python ord()用法及代码示例
- Python sum()用法及代码示例
注:本文由纯净天空筛选整理自rushi_javiya大神的英文原创作品 Python time.tzset() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。