首页 > 解决方案 > 获取应用了夏令时(DST)的python日期时间

问题描述

我在 UTC tmezone 的 csv 文件中有日期时间,如果我将其从 UTC 转换为pytz.timezone('America/Los_Angeles')或任何其他美国时区,它将省略 DST(日光)的第 2 小时(2:MM:SS)节省时间)。例如:2019-03-10 00:00:00

直接进入第 1 小时(1:MM:SS)到第 3 小时(3:MM:SS)。如果我在C3(javascript 图表库)中使用转换后的日期时间绘制折线图,​​则第 1 小时和第 3 小时之间有 1 小时的间隔。

注意:由于DST的原因,将UTC转换为“America/Los_Angeles” 时丢失了第 2 小时数据。

有什么方法可以在不丢失第二个小时数据的情况下解析日期时间?

标签: python-3.xpandastimezonedstpython-datetime

解决方案


欢迎来到夏令时的愚蠢。在北美,有 2 个时钟变化日:3 月的“春天前进”和 11 月的“回落”。确切的日子每年都不同。

  • 在“春天来临”这一天,时钟从 1:59:59 跳到 3:00:00 - 没有凌晨 2 点。
  • 相反,在“后退”日,1:59:59 之后是另一个 1:00:00 - 所以有两个凌晨 1 点。

pytz是在做正确的事,只是人类的行为如此令人困惑。


推荐阅读