gpt4 book ai didi

python - Timestamp.week 与 datetime.isocalendar

转载 作者:太空宇宙 更新时间:2023-11-04 08:17:00 24 4
gpt4 key购买 nike

我想知道为什么

>>> pandas.Timestamp(dt.datetime(2009,1,6)).week

>>> datetime.datetime(2009,1,6).isocalendar()[1]

不要给出相同的结果。

最佳答案

首先——您需要改掉整数以 0 开头的习惯。这意味着它们将被解释为八进制(base-8)常量,这会导致混淆:

>>> 10
10
>>> 010
8

至于为什么会给出两个不同的答案,原因有二:

(1) 您不是在比较周数。正如文档所说,isocalendar“[r]返回 [s] 包含 ISO 年、周数和工作日的三元组。”所以 isocalendar()[2] 将为您提供 ISO 工作日,而不是星期。

(2) ISO 日期的定义与您预期的略有不同(解释为 here )。例如,在最严重的情况下:

>>> dt.datetime(2010,1,1).isocalendar()
(2009, 53, 5)
>>> pd.Timestamp(dt.datetime(2010,1,1)).week
1

所以往往会有差异。

关于python - Timestamp.week 与 datetime.isocalendar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12662223/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com