【问题标题】:Converting timezone using pytz使用 pytz 转换时区
【发布时间】:2018-01-03 04:28:48
【问题描述】:

我已将时区转换为“欧洲/伦敦”,并打印出: 2017-07-27 12:39:07+01:00 伦敦时间是正确的。

但是我如何让它打印带有 +01:00 的时间,所以在这种情况下它是 13.39.07? 这是我正在使用的功能:

def utc_to_london(utc_dt):
        tz = pytz.timezone('Europe/London').localize(utc_dt)
        print(tz)
        return tz;

感谢您的帮助

【问题讨论】:

    标签: python-3.x datetime timezone utc pytz


    【解决方案1】:

    12:39:07+01:00 的意思是“在比 UTC 晚一小时的时区中,中午过后 39 分钟”。所以这意味着 11:39 UTC。

    在任何情况下“应用”+1 前向以获得 13:39 是没有意义的,因为那是一个无意义的时区——您将 UTC 偏移量“加倍”,这没有实际意义。

    【讨论】:

    • 唯一的问题是 12.39.07 现在是 UTC 时间
    • 听起来您的问题是您正在使用12:39:07 并使用tz_localize() 将伦敦时区附加到它。相反,您需要做的是将其“本地化”为pytz.utc,然后将其转换为伦敦时间。
    猜你喜欢
    • 2016-02-05
    • 2015-06-13
    • 2012-08-29
    • 2020-01-30
    • 2011-07-02
    • 2015-02-16
    • 2015-12-09
    • 2017-05-13
    • 2022-01-11
    相关资源
    最近更新 更多