Почему при вводе отрицательных значений элементов списка, компилятор выдает ошибку? IndexError: list index out of range
a = [int(g) for g in input().split()]
b = 0
for i in a:
print(a[i-1])
b += a[i-1]
print(b)
Ошибка: print(a[i-1]) IndexError: list index out of range
Ответы (1 шт):
Автор решения: n1tr0xs
→ Ссылка
Допустим вы ввели: 5 6 8
Тогда на первой итерации цикла в выражении i-1 содержится число 4. А элемента с таким номером в списке a не существует.
Предлагаю такое исправление вашего кода:
a = [int(g) for g in input().split()]
b = 0
for i in a:
print(i)
b += i
print(b)
Либо такой вариант
a = [int(g) for g in input().split()]
b = 0
for i in range(len(a)):
print(a[i])
b += a[i]
print(b)