Я начинающий пользователь Python.Я пытаюсь определить функцию для «сглаживания» списка с плавающей точкой путем усреднения компонентов по ряду соседей.
Вот мой код:
import random
random.seed(1)
def moving_window_average(x, n_neighbors=1):
width = n_neighbors*2 + 1
y = list()
for i in range(n):
y.append(sum(x[i+t])/width for t in range(-n_neighbors,n_neighbors))
return y
x=[0,10,5,3,1,5]
avg=moving_window_average(x, 1)
print(avg)
В выводе я получаю то, что представляется списком «генераторов», чего, как я не знаю, реклама не ожидала.В частности:
[<generator object moving_window_average.<locals>.<genexpr> at 0x7f57f992aba0>, <generator object moving_window_average.<locals>.<genexpr> at 0x7f57f992ab48>, <generator object moving_window_average.<locals>.<genexpr> at 0x7f57f992a728>, <generator object moving_window_average.<locals>.<genexpr> at 0x7f57f992aa98>, <generator object moving_window_average.<locals>.<genexpr> at 0x7f57f992aa40>, <generator object moving_window_average.<locals>.<genexpr> at 0x7f57f992a9e8>]
Может ли кто-нибудь указать мне на то, что здесь происходит?
Большое вам спасибо