python - 本地时区是什么

标签 python datetime timezone

假设服务器 (gae) 位于美国西海岸 (PST),约会时间为上午 10:00 在纽约市 (EST),而芝加哥 (CST) 的一个人正在使用他的设备来了解时间在纽约的约会。

当 CST 中的芝加哥设备中的人员访问位于 EST 中的网站时,她如何才能看到约会时间为上午 10 点?位于 MST 中的开发人员如何在日期时间中设置参数是否重要?使用 python 的时间和日历?

另外,这里的“本地时间”是哪个时区?

最佳答案

第三方模块,pytz ,提供了一种在时区之间转换的简单方法。例如,

import datetime as dt
import pytz

utc = pytz.utc
western = pytz.timezone('US/Pacific')
newyork = pytz.timezone('America/New_York')
chicago = pytz.timezone('America/Chicago')

假设有人在纽约上午 10 点创建了一个约会:

date = dt.datetime(2012, 8, 12, 10)    # naive datetime
print(date)
# 2012-08-12 10:00:00  

# localize converts naive datetimes to timezone-aware datetimes.
date_in_newyork = newyork.localize(date)  # timezone-aware datetime
print(date_in_newyork)
# 2012-08-12 10:00:00-04:00

您位于西海岸的服务器应以 UTC 格式存储此日期时间:

# astimezone converts timezone-aware datetimes to other timezones.
date_in_utc = date_in_newyork.astimezone(utc)
print(date_in_utc)
# 2012-08-12 14:00:00+00:00

现在,当芝加哥的人想知道约会的时间时,服务器可以将 UTC 转换为芝加哥时间、纽约时间或其他时间:

date_in_chicago = date_in_utc.astimezone(chicago)
print(date_in_chicago)
# 2012-08-12 09:00:00-05:00

date_in_newyork2 = date_in_utc.astimezone(newyork)
print(date_in_newyork2)
# 2012-08-12 10:00:00-04:00

关于python - 本地时区是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11925664/

相关文章:

python - 相交数取决于相交数据帧的顺序

java - 如何将 Java 日期字符串/对象转换为 JFreeChart 日期格式?

java - 如何将日期时间从一个时区转换为另一个时区

date - 在本地时区获取 Haskell 中的日期

php - 使用纪元时间但使用不同时区初始化时,DateTime 不会产生相同的时间

python - 如何使用 bert 嵌入而不是 glove/fasttext 等静态嵌入来训练神经网络模型?

python - 递归计算 Pandas 数据框中 parent 和 child 之间的比率

python - scipy.fft.fft 导致的傅里叶系数符号不正确

python-3.x - pandas - 增加日期时间时间(更多信息在文章中。)

python - 在 Python 中将公历(基督教)日期转换为波斯日期,反之亦然