Почему появляется ошибка IndexError: list index out of range в следующем куске кода?
def checkio(array: list) -> int:
return sum([v for k, v in enumerate(array) if k%2==0]) * array[-1]
Входные данные:
if __name__ == '__main__':
print('Example:')
print(checkio([0, 1, 2, 3, 4, 5]))
assert checkio([0, 1, 2, 3, 4, 5]) == 30, "(0+2+4)*5=30"
assert checkio([1, 3, 5]) == 30, "(1+5)*5=30"
assert checkio([6]) == 36, "(6)*6=36"
assert checkio([]) == 0, "An empty array = 0"
print("Coding complete? Click 'Check' to review your tests and earn cool rewards!")
При условии, что если заменить умножение на сложение, то эта ошибка пропадает и вычисления проходят корректно.
def checkio(array: list) -> int:
return sum([v for k, v in enumerate(array) if k%2==0]) + array[-1]