首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Datetime和Pytz Timezone .weekday()问题

Datetime和Pytz Timezone .weekday()问题
EN

Stack Overflow用户
提问于 2017-05-02 23:40:22
回答 1查看 1.1K关注 0票数 1

当我试图为订单创建特定的createdAt日期时间直方图时,我遇到了一个问题。问题是,即使在创建了时区感知的日期时间之后,.weekday()也会在同一天出现,尽管它应该是一个不同的时间。

用于测试此事件的代码如下所示:

代码语言:javascript
复制
import datetime
import pytz

value = {
    'createdAt': '2017-04-24T00:48:03+00:00'
}
created_at = datetime.datetime.strptime(value['createdAt'], '%Y-%m-%dT%H:%M:%S+00:00')

timezone = pytz.timezone('America/Los_Angeles')

created_at_naive = created_at
created_at_aware = timezone.localize(created_at_naive)

print(created_at_naive) # 2017-04-24 00:48:03
print(created_at_aware) # 2017-04-24 00:48:03-07:00
print(created_at_naive.weekday()) # 0 (Monday)
print(created_at_aware.weekday()) # 0 (should be Sunday)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-03 19:09:37

问题是,您需要实际将日期时间更改为新的时区:

代码语言:javascript
复制
>>> timezone('UTC').localize(created_at)
datetime.datetime(2017, 4, 24, 0, 48, 3, tzinfo=<UTC>)

>>>timezone('UTC').localize(created_at).astimezone(timezone('America/Los_Angeles'))
datetime.datetime(2017, 4, 23, 17, 48, 3, tzinfo=<DstTzInfo 'America/Los_Angeles' PDT-1 day, 17:00:00 DST>)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43748869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档