Одним из методов является использование функции генератора , которая берет строку данных и возвращает строку с заполненными значениями по мере необходимости с yield
.
код
def fill_row(row):
last_val = None
for col in row:
if(col != '' and col is not None):
last_val = col
yield last_val
inp_row = [90,'','','','',91,'',92]
filled_row = [x for x in fill_row(inp_row)]
print(filled_row)
выход
[90, 90, 90, 90, 90, 91, 91, 92]
Альтернативное решение
Решение, основанное исключительно на списках, выглядит следующим образом
def build_filled_row(row):
last_val = None
new_row = []
for col in row:
if(col != '' and col is not None):
last_val = col
new_row.append(last_val)
return new_row
alternate_filled_row = build_filled_row(inp_row)
print(alternate_filled_row)