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

Ошибка ‘Ошибка отступов: Ожидается блок с отступами‘ возникает у всех пользователей, будь то новички или опытные пользователи. Поскольку Python расставляет весь свой код по правильным пробелам, если у вас плохой отступ, код не скомпилируется, и вам будет выдано сообщение об ошибке.
Согласно соглашениям, принятым в PEP8, должно быть четыре пробельных символа там, где это необходимо. Идеально для каждого программиста использовать правильные отступы, чтобы улучшить читаемость кода.
Что вызывает ошибку отступа в Python?
Как уже говорилось, эта ошибка возникает в основном из-за ошибок в расстановке пробелов или табуляции в коде. Поскольку Python использует процедурный язык, вы можете столкнуться с этой ошибкой, если неправильно расставили табуляции/пробелы. Программа может выполняться правильно, но если интерпретатор обнаружит эту ошибку, то сообщение об ошибке появится в середине. Некоторые из причин ошибки:
- Вы используете как пробелы, так и табуляции в вашем коде. Если оба символа используются как взаимозаменяемые, интерпретатор не сможет определить, какой из них следует использовать.
- Вы поставили отступ неправильный. Если не следовать практике отступов, то неизбежно возникнет эта ошибка.
- Вы забыли сделать отступ составные высказывания например, ‘if’, ‘for’, ‘while’ и т. д.
- Вы забыли сделать отступ Определяемые пользователем функции или классы.
Решение 1: Проверка на наличие неправильных пробелов/табов
Не существует мгновенного исправления этой проблемы. Поскольку код принадлежит вам, вам придется пройтись по каждой строке и посмотреть, где вы допустили ошибку. В коде есть несколько блоков с разной структурой. Если есть оператор ‘If’, то необходимо сделать отступ для кода, который следует за ним.

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

Правильный отступ показан в примере выше. Для начала посмотрите цикл ‘for’. Все внутри цикл ‘for’ должен иметь отступ. Внутри цикла ‘for’ у нас есть оператор ‘if’. Внутри оператора ‘if’ все должно быть далее отступ.
Вы можете легко проверить, где произошла ошибка отступа, проверив журнал ошибок и увидев строку, в которой возникла ошибка.
Решение 2: Включение символов табуляции/пробела в редакторе
Если вам трудно делать отступы в коде «наугад», как это делают все программисты, вы можете включить символы табуляции/пробела в вашей IDE или редакторе кода. Эта опция позволит использовать в коде маленькие «точки», каждая из которых обозначает пробел или табуляцию. Вы можете использовать это для более правильного отступа кода и убедиться, что нет лишних отступов или некоторые из них отсутствуют.
В этом примере мы возьмем Notepad++ и посмотрим, как можно включить символы. Если вы используете другую программу для редактирования кода, вы можете включить настройки, специфичные для нее.
- Нажмите Вид > Показать символ > Показать пробелы и TAB

Включение пробела и табуляции – Блокнот++
- Теперь опция включена. Вы также можете включить Руководство по отступам и вам станет легче.

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





