Ошибка TypeError: строковые индексы должны быть целыми числами — как исправить

Ошибка TypeError: строковые индексы должны быть целыми числами обычно возникает, когда вы пытаетесь получить доступ к значению из итерируемого объекта, используя строковый индекс, а не целочисленный индекс.

Воспроизведение ошибки

Сценарий 1. Индекс строки или целочисленный индекс

Если вы запустите приведенный выше код, вы получите TypeError.

Сценарий 2. Индексы строк должны быть целыми числами, а не кортежами

Выход

Сценарий 3. Доступ к значениям с использованием строкового индекса вместо целочисленного индекса

Выход

Как исправить ошибку?

Способ 1. Строковый индекс или целочисленный индекс

Чтобы исправить ошибку TypeError: строковые индексы должны быть целыми числами, убедитесь, что вы «используете целочисленное значение для индекса». Вы можете использовать встроенную функцию int() для преобразования нецелого индекса в целое число.

Выход

Видите ли, он возвращает второй элемент строки, индекс которого равен 1, поскольку в Python индекс начинается с 0.

Мы исправили ошибку TypeError: строковые индексы должны быть целыми числами, преобразовав индекс в целое число с помощью функции int().

Однако этот подход несовершенен и будет работать только в том случае, если индекс можно успешно преобразовать в целое число.

Если индекс не является допустимым целым числом, вместо этого будет выдана ValueError. Например, если в приведенном выше коде индекс равен «x» вместо «1», это вызовет ошибку ValueError.

Способ 2. Индексы строк должны быть целыми числами, а не кортежами

Выход

Способ 3. Доступ к значениям с использованием строкового индекса вместо целочисленного индекса

Выход

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python