Индексная ошибка:индекс списка вне диапазона и Python

StackOverflow https://stackoverflow.com/questions/1098643

Вопрос

Я приказываю своей программе распечатать строку 53 вывода.Эта ошибка говорит мне о том, что строк не так много и поэтому невозможно ее распечатать?

Это было полезно?

Решение

Если у вас есть список из 53 элементов, последний — thelist[52] потому что индексация начинается с 0.

Другие советы

Да,

Вы пытаетесь получить доступ к несуществующему элементу списка.

MyList = ["item1", "item2"]
print MyList[0] # Will work
print MyList[1] # Will Work
print MyList[2] # Will crash.

У вас есть ошибка на единицу?

Да.В последовательности нет 54-го элемента.

Это верно.«индекс списка вне диапазона», скорее всего, означает, что вы имеете в виду n-th элемент списка, а длина списка меньше n.

Всегда имейте в виду, что когда вы хотите устранить эту ошибку, значение индексации и диапазона по умолчанию начинается с 0, поэтому, если общее количество элементов равно 100, тогда l[99] и range(99) предоставят вам доступ до последнего элемента.

всякий раз, когда вы получаете этот тип ошибки, пожалуйста, перепроверьте элементы, которые находятся между/средними в диапазоне, и убедитесь, что их индекс не является последним. Если вы получаете выходные данные, то вы допустили совершенную ошибку, упомянутую выше.

Индексирование Python работает так: оно начинается с 0., поэтому первое число вашего списка будет [0].Вам придется печатать [52], так как начальный индекс равен 0, и поэтому строка 53 [52].

Вычтите 1 из значения, и все будет в порядке.:)

Если вы читаете список из текстового файла, вы можете получить последнюю пустую строку как элемент списка.Избавиться от этого можно так:

list.pop()
for i in list:
   i[12]=....
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top