Привет, ребята, мне нужна была помощь. У меня есть список кортежей, в котором каждый кортеж содержит 3 элемента.
- Год в формате 2020.
- Месяц в виде целого числа от 1 до 12
- Любое случайное целое число
Я хотел создать функцию l oop для этого списка кортежей, чтобы в каждом кортеже я мог вычислить разницу между месяцем и данным целым числом, а затем узнать новый месяц в соответствии с остатком. Например, кортеж для мая 2020 года будет (2020,5,3)
, поэтому результат будет 5-3=2
, что будет означать февраль 2020 года. Также, если результат будет отрицательным, год будет уменьшаться с 2020 до 2019 и так далее в зависимости от разницы. . Любая помощь будет принята с благодарностью.
Edit - Итак, я создал эту функцию, используя logi c, указанный в одном из ответов ниже, но это не совсем то, что я хотел,
def subtract_months(input_list):
output_list = []
#TODO: implement your code here
for i in input_list:
result = i[1]-i[2]
if 12 >= result > 0:
output_list.append((i[0],result))
else:
output_list.append((i[0]-1,12-abs(result)))
return output_list
Если Я использую ввод вроде [(2020,5,3)]. Код работает нормально и дает на выходе (2020,2), но если я хочу ввести ввод вроде [(2020,5,20)], то это просто цикл для один год, а не 2 года.