Здесь есть несколько вещей, которые вам нужно исправить.
РЕДАКТИРОВАТЬ: Во-первых, будьте осторожны с вашим диапазоном, так как вы используете месяц + 1 для создания next_month_begin, вы не хотите, чтобы это было больше 12, или вы получите ошибку.
Далее, когда вы пытаетесь создать объект даты, вы передаете месяц в виде строки при использовании (datetime.date(2010,'%d',1))%month
. Ваш код, вероятно, выдает эту ошибку TypeError: an integer is required
.
Вам нужно дать ему целое число, представляющее месяц, а не строку целого числа (есть разница между 1
и '1'
). Это также простое исправление, поскольку у вас есть переменная с именем month
, которая уже является целым числом, просто используйте ее вместо создания строки. Итак, ваш код должен выглядеть примерно так:
month_start = datetime.date(2010,month,1)
Я думаю, вы можете понять, как применить это к вашему next_month_begin
заданию.
Последняя проблема заключается в том, что вам нужно использовать datetime.timedelta
, чтобы сообщить Python, что нужно искать в модуле datetime
функцию timedelta()
- ваша программа в настоящее время выдаст ошибку, сообщающую, что timedelta не определена. 1023 *
Дайте мне знать, если у вас возникли проблемы с применением этих исправлений. Обязательно укажите, какую ошибку вы можете получить.