Я пытаюсь назначить платежи, которые хранятся в векторе p, вектору долгов, который равен l, поэтому мне нужно сохранить даты платежа и выплаченную сумму для каждой даты платежа в соответствии с долгами.
Этот код предназначен для платежей только по первому долгу (254 000 долларов США) (позиция 0 в l): [62998, datetime.date (2019, 11, 29), 254000.0]
Желаемые результаты следующие:
- fechas_rec = [datetime.date (2020, 1, 30), datetime.date (2020, 2, 28)] вектор дат платежей
- p = [[ 10000.0, datetime.date (2020, 2, 28)], [110000.0, datetime.date (2020, 3, 30)]] обновите платежи, указав доступные суммы.
- recuperados = [137500.0,116500.0] вектор выплат по вектору точки 1.
Но при обновлении второй последней строки recuperados.append () с закомментированным кодом recuperados.append ('a') " , вывод первой точки меняется, вопрос почему?
Новый вывод:
fechas_rec=[datetime.date(2020, 2, 28), datetime.date(2020, 3, 30)]
Код:
l = [
[62998, datetime.date(2019, 11, 29), 254000.0],
[65317, datetime.date(2019, 12, 30), 229000.0],
[66606, datetime.date(2020, 1, 31), 229000.0],
[68751, datetime.date(2020, 2, 28), 228000.0],
[70652, datetime.date(2020, 3, 24), 229000.0],
]
p = [
[137500.0, datetime.date(2020, 1, 30)],
[126500.0, datetime.date(2020, 2, 28)],
[110000.0, datetime.date(2020, 3, 30)],
]
for j in l:
fechas_rec = []
recuperados = []
suma = 0
for i in enumerate(p):
suma = suma + i[1][0]
if suma <= j[2]:
fechas_rec.append(i[1][1])
recuperados.append(i[1][0])
else:
val = suma - j[2]
c = i[1]
del p[: i[0] + 1]
p.insert(0, [val, c[1]])
fechas_rec.append(i[1][1])
recuperados.append() # recuperados.append('a')
break