Исправлено: Ошибка отступа Python —

Python — это новый язык программирования, впервые выпущенный в 1991 году. Язык известен своей обширной обширной библиотекой и поддерживает несколько парадигм программирования, таких как функциональная, императивная, процедурная и объектно-ориентированная.

Ошибка отступа Python при кодированииОшибка отступа в Python

Ошибка отступа: ожидается блок с отступом’Происходит для всех видов пользователей; будь они новички или опытные. Поскольку Python упорядочивает весь свой код по правильным пробелам, если у вас неправильный отступ, код не скомпилируется, и вам будет возвращено сообщение об ошибке.

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

Что вызывает ошибку отступа в Python?

Как упоминалось ранее, эта ошибка в основном возникает из-за ошибок пробела или табуляции в вашем коде. Поскольку Python использует процедурный язык, вы можете столкнуться с этой ошибкой, если вы не правильно разместили табуляции / пробелы. Программа может работать правильно, но если интерпретатор обнаружит эту ошибку, в середине появится сообщение об ошибке. Некоторые из причин ошибки:

  • Ты используешь и пробелы и табуляции в вашем коде. Если оба они взаимозаменяемы, интерпретатор не сможет определить, какой элемент использовать.
  • Вы поместили отступ неправильно. Если практика отступления не будет соблюдена, эта ошибка неизбежно возникнет.
  • Вы забыли сделать отступ составные высказывания такие как «если», «для», «пока» и т. д.
  • Вы забыли сделать отступ пользовательские функции или классы.

Решение 1. Проверка на наличие неправильных пробелов / вкладок

Нет мгновенного решения этой проблемы. Так как код ваш, вы должны пройти каждую строку и посмотреть, где вы допустили ошибку. В коде есть несколько блоков относительно структуры. Если есть оператор «Если», то должен быть отступ для кода, который следует за ним.

Блочная структура, визуализирующая отступ в PythonБлочная структура, визуализирующая отступ

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

Пример отступа в PythonПример отступа

Правильный отступ показан в примере выше. Смотрите цикл «для» для начинающих. Все внутри цикл «for» должен иметь отступ. Внутри цикла «для» у нас есть выражение «если». Внутри выражения «если» все должно быть в дальнейшем отступ.

Вы можете легко проверить, где произошла ошибка отступа, проверив журнал ошибок и увидев строку, откуда возникла ошибка.

Решение 2. Включение символов табуляции / пробела в редакторе

Если вам трудно сделать отступ в коде с помощью «угадай», как это делают все программисты, вы можете включить символы табуляции / пробела в вашей IDE или редакторе кода. Эта опция включит маленькие «точки» в вашем коде, где каждая точка представляет пробел или табуляцию. Вы можете использовать это для более правильного отступа в коде и убедиться, что нет дополнительного отступа или что-то отсутствует.

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

  1. Нажмите Вид> Показать символ> Показать пробелы и TAB
    Включение пробелов и табуляции в PythonВключение пробелов и табуляции — Notepad ++
  1. Теперь опция включена. Вы также можете включить Руководство по отступам так что вам станет легче.

Пример кода с правильным отступом в PythonПример кода с правильным отступом

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

Ссылка на основную публикацию
Adblock
detector