【问题标题】:python date matching to weekpython日期匹配到星期
【发布时间】:2017-09-05 00:19:58
【问题描述】:

我正在使用谷歌日历和表格 API 探索 python。基本上它应该在我的日历中记录某些事件,计算有多少,然后把它放在我的工作表中。

我从谷歌日历 api 快速入门示例的数组中获得了一些这样的日期信息,所以我知道我可以读取数据,但我需要从每天到每周处理它。

2017-10-23 work
2017-10-24 work

我想将它们压缩成几周。所以上面两行应该折叠成这一行:

Oct 23- Oct 29 2 #2 instances of work.

但我不确定如何实现。

【问题讨论】:

  • datetime.date 有一个 isocalendar() 方法,它返回一个包含日历周的元组,然后您可以通过指向 datetime.date(2010, 6, 16).isocalendar( )[1]

标签: python date google-sheets week-number


【解决方案1】:

datetime.date 有一个 isocalendar() 方法,它返回一个元组,您可以从中获取日历周。

例如,使用您从 Google Calendar API 获得的数组中的数据:

>>> datetime.date(2017, 10, 23).isocalendar()
(2017, 43, 1)

>>> datetime.date(2017, 10, 24).isocalendar()
(2017, 43, 2)

请注意,这两个事件都发生在一年中的第 43 周。

只获取星期:

>>> datetime.date(2017, 10, 24).isocalendar()[1]
43

从那里,您可以确定某个事件是否在同一周内重复发生。处理所有日期、将它们解析为周并聚合它们需要额外的编码,但核心将按周识别事件,您可以使用datetime.datetime.isocalendar() 来做到这一点。

希望有用!

【讨论】:

    猜你喜欢
    • 2020-01-21
    • 2017-10-12
    • 1970-01-01
    • 2011-08-22
    • 2019-04-08
    • 2021-02-05
    • 1970-01-01
    • 2018-06-12
    • 2018-05-26
    相关资源
    最近更新 更多