我在将时区设置为IST时出错.为什么



我在将时区设置为IST时出错,但当它更改为GMT时,它正在工作。我能知道为什么会发生这种情况吗?还有一个疑问,我们能比较两个不同的时区吗。请检查我写的代码。

from datetime import datetime
s1 = 'Oct 06 09:42:21 IST 2020'
d1 = datetime.strptime(s1, '%b %d %H:%M:%S %Z %Y')
print(d1)
s2 = 'Oct 06 09:42:26 2020 IST'
d2 = datetime.strptime(s2, '%b %d %H:%M:%S %Y %Z')
print(d2)
print(d1 < d2)

实现相同目标的另一种方法是

from datetime import datetime
s1 = 'Oct 06 09:42:21 2020 +0530'
d1 = datetime.strptime(s1, '%b %d %H:%M:%S %Y %z')
print(d1)
print(d1.tzinfo)
s2 = 'Oct 06 09:42:26 2020 +0530'
d2 = datetime.strptime(s2, '%b %d %H:%M:%S %Y %z')
print(d2)
print(d2.tzinfo)
print(d1 < d2)

输出

2020-10-06 09:42:21+05:30
UTC+05:30
2020-10-06 09:42:26+05:30
UTC+05:30
True

在我看来,你试图实现这一点的方式是不可能的,这是为同一提出的一个错误

最新更新