如何将 datetime.date.today() 转换为 UTC 时间?
Posted
技术标签:
【中文标题】如何将 datetime.date.today() 转换为 UTC 时间?【英文标题】:How to convert datetime.date.today() to UTC time? 【发布时间】:2015-02-19 15:12:36 【问题描述】:如何确保datetime.date.today()
转换为UTC 时间?
这是我目前的代码:
#today : 2014-12-21
today = datetime.date.today()
#1900-01-01 16:00:00+00:00
timeformat = datetime.datetime.strptime('16:00', '%H:%M').replace(tzinfo=pytz.utc)
#combine today and timeformat 2014-12-21 16:00:00
now = datetime.datetime.combine(u, timeformat.time())
str_now = now.strftime("%Y-%m-%d %H:%M:%S")
【问题讨论】:
【参考方案1】:用于打印日期和时间,您可以使用 ...
tomorrow = twtomorrow.strftime("%Y-%m-%d %H:%M:%S")
而不是
tomorrow = twtomorrow.strftime("%Y-%m-%d")
【讨论】:
【参考方案2】:使用utcnow
:
today = datetime.datetime.utcnow().date()
【讨论】:
这是不正确的,除非当地时间的午夜 (date.today()
) 与 UTC 的午夜 (.utcnow().date()
) 的时间实例相同。见How do I get the UTC time of “midnight” for a given timezone?
它和午夜有什么关系?它只是获取 UTC 现在所在的日期。
@webjunkie:看问题标题,注意:date.today()
那里。它返回 local 时区的日期。该值会在 local 时区的午夜发生变化。 23:59:59
是一天,00:00:00
是另一天。你在追吗?那一刻:本地时区的00:00
对应于不同 UTC 时间,具体取决于本地时区,例如,纽约的2016-02-27 00:00
对应于2016-02-27 05:00
UTC。如果问题标题是“现在UTC的当前日期是什么时候”;我同意你的看法。以上是关于如何将 datetime.date.today() 转换为 UTC 时间?的主要内容,如果未能解决你的问题,请参考以下文章