Python time.tzset()函数
在Python中,时间模块的 tzset()函数基于使用环境变量 TZ 的重新初始化设置。 Python中时间模块的tzset()方法重置时间转换协议。此时区表示 UTC 时间以西的非 DST 秒,而 altzone 表示 UTC 时间以西的 DST 秒。 TZ 环境变量的常规形式是:
std offset [dst [offset [,start[/time], end[/time]]]]
组件在哪里:
- std 和 dst:它是由三个或更多字母数字值给出的时区收缩。这些将分散到Python中时间的 tzname()函数中。
- 偏移量:在 tzset() 中, 偏移量的形式为:± hh[:mm[:ss]]。这表示到达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.nd:一年中第 m 月第 n 周的第 d 天(0 <= d <= 6)(1 <= n <= 5, 1 <= m <= 12,其中第 5 周表示“第m 月的最后 d 天”,可能发生在第四周或第五周)。第 1 周是第 d 天出现的第一周。第零天是星期天。
- time:这遵循与 offset 相同的格式,只是其中不允许使用前导符号('-' 或 '+')。如果未给出,则默认时间为 02:00:00。
句法:
time.tzset()
参数:
不适用
返回值:
不返回任何值。
注意:尽管在许多情况下,如果我们更改 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'))
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'))
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'))
输出
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