Проблема с ошибкой IndexError: invalid index to scalar variable. (Python)

May95

Новичок
Пользователь
Июл 30, 2020
2
0
1
Добрый день.

Кратко о коде:
Написала код, в котором пытаюсь получить величину "A".
"A" рассчитывается как сумма всех элементов "B".
Для расчета "B" необходим вложенный цикл, так как во время расчета могут меняться две переменные: n и r.

Код работает корректно до момента расчета "A" (проверяла аналитически). Но почему-то вместо суммы всех элементов "B", получаю ошибку IndexError.

Бьюсь с этой проблемой уже несколько дней и решительно не понимаю, как ее разрешить.

Подскажите, в чем может быть проблема? Заранее спасибо за ответ.
Python:
import numpy as np

C=[-23.6, -102.5, -315.8, -320.8, 10.4, 244.9, 447.7, 113, 222.5, 197.3]
for r in np.arange(0.05, 0.55, 0.05):
    A=0
    for n in range(len(C)):
        D=round((1+r)**-n, 3)
        B=round(C[n]*D, 1)
        A=sum(B[n])
    print(A, round(r,2), "\n")
 

Jerry

Пользователь
Пользователь
Июл 28, 2020
29
12
3
Условие задачи хотелось бы подробнее, из тех данных, которые есть могу предложить:
Python:
import numpy as np

C = [-23.6, -102.5, -315.8, -320.8, 10.4, 244.9, 447.7, 113, 222.5, 197.3]

for r in np.arange(0.05, 0.55, 0.05):
    A = 0
    B = []

    for n in range(len(C)):
        D = round((1+r)**-n, 3)
        B.append(round(C[n]*D, 1))

    A = sum(B)
    print(A, round(r,2))

Вывод:
Bash:
208.00000000000006 0.05
38.70000000000003 0.1
-70.30000000000005 0.15
-138.89999999999998 0.2
-182.49999999999994 0.25
-209.29999999999998 0.3
-224.39999999999992 0.35
-231.6 0.4
-234.20000000000005 0.45
-232.89999999999998 0.5
 

May95

Новичок
Пользователь
Июл 30, 2020
2
0
1
Огромнейшее спасибо, такие значения и должны были получиться. Поняла в чем, была моя ошибка в коде.
 

Форум IT Специалистов