Ошибка IndexError: неверный индекс скалярной переменной в Python

Python выдает ошибку IndexError: неверный индекс для скалярной переменной — это «ошибка времени компиляции, которая возникает при попытке доступа к элементу массива или списка с использованием неправильной позиции индекса или уровня измерения([][])».

Если вы попытаетесь получить доступ к элементу из 2D-массива, используя три индекса([][][]), вы получите ошибку IndexError: недопустимый индекс для ошибки скалярной переменной.

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

Выход

Приведенный выше код сгенерирует ошибку «IndexError: недопустимый индекс для скалярной переменной», поскольку переменная значения представляет собой двумерный массив с размером(3,2), и у нее есть только два индекса для доступа к элементам: первый для строк и второй для столбцов.

Мы пытаемся получить доступ к дополнительному индексу, используя значение[0][1][2], где первый индекс 0 предназначен для строк, второй индекс 1 предназначен для столбцов, а третий индекс 2 недопустим, поскольку значение является 2D массив.

Как исправить IndexError: неверный индекс скалярной переменной

Существуют следующие методы исправления IndexError в Python.

  1. Способ 1: доступ к элементу, используя только два индекса: «значение [0][1]».
  2. Способ 2: доступ к элементу с использованием одного индекса: «значение[0], значение[1], значение[2]».

Способ 1: использование двух индексов

Чтобы получить доступ к определенному значению из двумерного массива, используйте синтаксис value[0][1].

Выход

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

Этот код не вызовет ошибку «IndexError: неверный индекс скалярной переменной», поскольку индексы(0,1) действительны для двумерного массива.

Метод 2: использование одного индекса

Чтобы получить доступ к определенному массиву из двумерного массива, используйте синтаксис value[0].

Выход

В приведенном выше коде доступ к element_first осуществляется с использованием индекса 0, соответствующего элементу в первой строке двумерного массива.

Доступ к элементу_второй осуществляется по индексу 1, а доступ к элементу_третьему осуществляется по индексу 2.

Код не выдаст ошибку «IndexError», поскольку индексы 0, 1 и 2 являются допустимыми индексами для двумерного массива.

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

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

Программирование на Python
Добавить комментарии