Оценка полиномиальных коэффициентов

Я пытаюсь написать функцию, которая принимает в качестве входных данных список коэффициентов (a0, a1, a2, a3 ..... a n) полинома p (x) и значения x. Функция вернет p (x), которое является значением многочлена при оценке в x.

Многочлен степени n с коэффициентом a0, a1, a2, a3 ........ an является функцией

p(x)= a0+a1*x+a2*x^2+a3*x^3+.....+an*x^n

Так что я'Я не уверен, как решить проблему. Я'Я думаю, что мне понадобится диапазон, но как я могу сделать так, чтобы он мог обрабатывать любой числовой ввод для х? Я'Я не ожидаю, что вы, ребята, дадите ответ, яЯ просто нуждаюсь в небольшом старте. Нужен ли мне цикл for, тогда как цикл может быть рекурсивным вариантом?

def poly(lst, x)

Мне нужно перебирать элементы списка, использовать ли для этого индексы, но как мне сделать так, чтобы они перебирали неизвестное количество элементов?

Я думаю, что я могу использовать рекурсию здесь:

    def poly(lst, x):
        n = len(lst)
        If n==4:
           return lst[o]+lst[1]*x+lst[2]*x**2+lst[3]*x**3
        elif n==3:
           return lst[o]+lst[1]*x+lst[2]*x**2
        elif n==2:
           return lst[o]+lst[1]*x
        elif n==1:
           return lst[o]
        else:
            return lst[o]+lst[1]*x+lst[2]*x**2+lst[3]*x**3+lst[n]*x**n

Это работает для п <= 4, но я получаю ошибку индекса: индекс списка выходит за пределы диапазона для n>4, можетхотя не понимаю почему.

Ответы на вопрос(4)

Ваш ответ на вопрос