Преобразовать значения в списке и заменить их

У меня есть файл со значениями температуры, где-то есть ошибки в виде того, что программа вместо реальной температуры пишет 300 Кельвин, нужно найти соседние значения температуры, взять их среднее и вставить обратно в список, чтобы вышел корректный график температуры. Вот к примеру: 346 346 300 347 347 Здесь нужно взять среднее и вместо 300 подставить. В моем коде он мне выдает только значение 304 и все, не могу понять почему

li = []
def FileOpener(): #Открываем файл для создания списка значений
    f = open('file.txt')
    for i in f:
        li.append(int(i))
    f.close()

FileOpener()

def Fixer():
    f = open('fixed.txt', 'w')
    a = [(li[i - 1] + li[i + 1])/2 for i in li if i == 300]
    print(a)
    f.close()
Fixer()

Ответы (0 шт):