python - 在 ISO 8601 中用时区编写 numpy datetime64

标签 python datetime numpy timezone

将 numpy datetime64 对象写入 ISO 8601 字符串时如何控制时区?具体来说,我希望时区为“+0000”,就像下面的输入一样。对于这个非常简单的示例,我只希望它打印回原始字符串。

import numpy
print(numpy.datetime64('2014-03-07T17:52:00.000+0000'))

对我来说,它返回

2014-03-07T12:52:00.000-0500

我使用的是 python 3.4、numpy 1.9.2 和 windows。

This问题类似,但前两个答案实际上并没有回答问题,第三个答案特定于unix。

最佳答案

s = '2014-03-07T17:52:00.000+0000'
print(numpy.datetime64(s).item().replace(tzinfo=pytz.UTC).isoformat('T'))

感谢 ShadowRanger 让我朝着正确的方向前进。 item 从 datetime64 获取原始日期时间,然后用 UTC 替换时区,因为我知道在本例中就是这样,然后使用“T”分隔符以 ISO 格式获取它。

关于python - 在 ISO 8601 中用时区编写 numpy datetime64,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35348633/

相关文章:

mysql - Django 按年、月、日、时、分过滤日期时间

apache-spark - 如何将不同的时区应用于 PySpark 中的时间戳

datetime - AngularJS 日期过滤器时间不正确

python - NumPy 数组初始化(填充相同的值)

python - 如何从远程服务器检索文件目录?

python - 如何在Mac上将pip安装到python 2.7.10

python - 为什么 numpy 数组不能从 datetime 隐式转换为 np.datetime64?

python - Tensorflow 阅读 CSV - 什么是最好的方法

python - 是否可以绘制像 GtkIconView 一样列出的 GtkTreeView?

python - 如何按行随机打乱 Pandas 数据框