Я хотел бы создать функцию python, которая позволила бы мне перебирать в течение месяцев от начальной точки до точки остановки. Например, это выглядело бы как
def months(start_month, start_year, end_month, end_year):
Вызов months(8, 2010, 3, 2011)
вернется:
((8, 2010), (9, 2010), (10, 2010), (11, 2010), (12, 2010), (1, 2011), (2, 2011), (3, 2011))
Функция может просто вернуть кортеж кортежей, но мне бы хотелось увидеть его как генератор (т.е. используя yield
).
Я проверил модуль calendar
python и, похоже, не предоставил эту функцию. Я мог бы написать неприятный цикл for
, чтобы сделать это достаточно легко, но мне интересно посмотреть, как изящно это может сделать про.
Спасибо.