日期库,能计算“每三周的星期二”?

1 投票
2 回答
729 浏览
提问于 2025-04-16 00:19

我想找一个库或者命令,能够根据输入的内容,比如“每个月的第三个星期二”,给出一系列的日期,比如(2010-06-15,2010-07-20,2010-08-17)等等。

如果这个工具可以在Python中调用,或者在Unix命令行中使用,或者通过网络API访问,那就太好了。

2 个回答

1

可以试试 calendar 模块。这里有一篇不错的介绍文章,它正好包含了你想了解的内容:http://www.doughellmann.com/PyMOTW/calendar/index.html

7

总是可以使用 dateutil 这个库。
下面的例子是基于 ~unutbu 对于 这个问题的精彩回答,这个问题和 之前的一个类似问题 有关:

>>> from datetime import date
>>> from dateutil import rrule, relativedelta
>>> every_third_tuesday = rrule.rrule(rrule.MONTHLY, 
                                      byweekday=relativedelta.TU(3), 
                                      dtstart=date.today(), 
                                      count=3)
>>> for tt in every_third_tuesday:
...   print tt.date()
... 
2010-07-20
2010-08-17
2010-09-21

撰写回答