1

我有点困惑 numpy 如何处理时区。如果我只用日期创建一个日期时间对象,它似乎使用祖鲁时区。如果我使用额外的时间步长,它将使用我当前的时区。如果我然后操纵这些对象,例如添加一个 timedelta,结果会有所不同:

import numpy as np
a = np.datetime64('2015-04-22')
b = np.datetime64('2015-04-22T00:00')
delta = np.timedelta64(1,'h')
print(a+delta,b+delta)

我必须确保所有值都在同一个时区,所以我的问题是,如何确保初始化这些日期的用户不会将日期和日期与时间混合。

4

1 回答 1

0

如果您在 datetime 中使用 timestep 指定 Zulu,您将获得统一的数据。

In [30]: b = np.datetime64('2015-04-22T00:00Z')

In [31]: b + delta
Out[31]: numpy.datetime64('2015-04-22T03:00+0200')

In [32]: a + delta
Out[32]: numpy.datetime64('2015-04-22T03:00+0200','h')

http://docs.scipy.org/doc/numpy/reference/arrays.datetime.html#basic-datetimes

于 2015-04-23T08:07:48.720 回答