gpt4 book ai didi

python - 将 tzinfo 设置为日期时间对象的最佳实践或快捷方式

转载 作者:太空宇宙 更新时间:2023-11-03 19:18:47 26 4
gpt4 key购买 nike

下面描述的代码片段是否有快捷方式:

if value.tzinfo is None:
value = default_tzinfo.localize(value)
new_value = value.astimezone(default_tzinfo)
else:
new_value = value

我尝试使用 datetime.replace() 但当我使用美国/太平洋时区时返回 GMT -8 而不是 -7。

参见:http://wwp.greenwichmeantime.com/time-zone/usa/pacific-time/pacific-daylight-time.htm

value = value.replace(tzinfo=default_tzinfo)

示例输出:

2012-05-06 13:12:45-08:00
US/Pacific
---
2012-05-07 00:12:45+03:00
Europe/Istanbul

最佳答案

pytz文档中给出了答案:http://pytz.sourceforge.net/#localized-times-and-date-arithmetic

使用localize后,您应该拥有具有正确时区的日期时间。对 astimezone 的调用是多余的,可能会让您感到困惑。

时区需要知道日期和时间,以便能够根据夏令时转换自行调整。这就是replace不起作用的原因。

关于python - 将 tzinfo 设置为日期时间对象的最佳实践或快捷方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10504499/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com