【发布时间】:2021-06-29 14:19:14
【问题描述】:
如果我有“2021 年 4 月 2 日”之类的内容并且(假设它在太平洋标准时间中午上市),我将如何将其转换为等效的 Unix 纪元日期,我认为这是 UTC 时间的第二个数字?
这是我的尝试:
import time
import datetime
import pytz
print("Right now it's {}".format(int(time.time())))
date_string = "Apr 02, 2021"
d = datetime.datetime.strptime(date_string, '%b %d, %Y').replace(hour=12)
pacific_timezone = pytz.timezone("America/Los_Angeles")
d_in_pacific_time = pacific_timezone.localize(d)
print("Noon PST on that day was {}".format(int(d_in_pacific_time.timestamp())))
我不知道我这样做是否正确,或者该方法是否有意义,时间总是让我感到困惑,我在这里盲目飞行。制作日期时间,将其本地化为 pytz 时区,然后使用 .timestamp() 将其转换为 UTC 是否正确?
【问题讨论】:
-
是的,你是对的,如果你把它转换回来,它会给你正确的输出。
print(datetime.datetime.fromtimestamp(1617390000).astimezone(tz = pytz.timezone('US/Pacific')))
标签: python date datetime timezone pytz