在Python中获取当月某天的所有事件

时间:2019-12-27 11:01:05

标签: python date

我是Python新手,我需要一些可以大大提高办公室工作效率的东西。

说到重点,我需要一个类似的功能(伪代码):

def return_dates(Monday):
   -do the job-
   return [2, 9, 16, 23, 30]
#(result bazing on DEC 2019)

所以基本上我需要一个函数,该函数将返回一个数字列表,这些数字表示当前月份中给定日期的出现。

我尝试在堆栈中搜索,但找不到Python解决方案。我发现日期和日历模块在这种情况下可能有用,并且我尝试阅读文档,但是我实在太笨拙,无法自己做:(。

任何帮助将不胜感激。预先感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用calendar模块(itermonthdays2方法)来获取日期列表:

import calendar

def get_days(year, month, day):
    """ day is: 0 - Monday
                ...
                6 - Sunday
    """
    c = calendar.Calendar()
    return [date for date, _day in c.itermonthdays2(year, month) if date != 0 and _day == day]


print(get_days(2019, 12, 0))

打印:

[2, 9, 16, 23, 30]