Вычтите месяцы из года в Python - PullRequest
0 голосов
/ 29 мая 2020

реализовать функцию subtract_months, чтобы вычесть n количество месяцев из заданного года и месяца.

Входные данные: список кортежей [(year1, month1, months_to_subtract1), (year2, month2, months_to_subtract2), ...], где год - это целое число 4 di git month - это целое число от 1 до 12, 1 = январь, 2 = февраль, ... 12 = декабрь), а month_to_subtract - целое число

. Вывод: список кортежей [(result_year1, result_month1), (result_year2, result_month2), ...] год (4 di git целое число) месяц (целое число от 1 до 12, 1 = январь, 2 = февраль, ... 12 = декабрь)

Например: вычтите 3 месяца из мая 2020 г. Это должно привести к вывод Февраль 2020 В этом примере вводы: год = 2020 месяц = ​​5 вывод: год = 2020 месяц = ​​2

def subtract_months(input_list):
    output_list = []
    #TODO: implement your code here

    return output_list

1 Ответ

1 голос
/ 30 мая 2020

Решение, которое я придумал, и оно хорошо работает во всех случаях.

def subtract_Months (год, месяц, month_to_subtract):

result_month = 0
result_year = 0
if month > (month_to_subtract % 12):
    result_month = (month - month_to_subtract) % 12 
    result_year = year - month_to_subtract // 12
else:        
    result_month = 12 - (month_to_subtract % 12) + month
    result_year = year - (month_to_subtract // 12 + 1)
    
return (result_year, result_month)

subtract_Months (2010,5,7)

(2009,10)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...