Дрон Кодер — программирование для детей и взрослых в игровой форме. Начать бесплатно

IndentationError: ошибка отступа

В Python отступы — часть синтаксиса: ими обозначают, что относится к if, циклу или функции. Отсюда и ошибка.

Почему отступы важны

В большинстве языков блоки кода обрамляют скобками, а в Python — отступами. Сдвиг вправо на 4 пробела говорит: «эти строки внутри if (или цикла, функции)». Поэтому неверный отступ — это настоящая ошибка, а не мелочь оформления.

Частые причины

После строки с двоеточием Python ждёт отступ, а его нет (или наоборот — отступ там, где не нужно). Ещё частая беда — смешаны пробелы и табуляция: на вид одинаково, а для Python по-разному.

if x > 0:
print(x)      # IndentationError: нет отступа

if x > 0:
    print(x)  # правильно: 4 пробела

Как исправить

Проверьте, что все строки внутри if/цикла/функции сдвинуты ровно на 4 пробела и одинаково. Настройте редактор так, чтобы клавиша Tab вставляла пробелы, — это разом убирает путаницу пробелов и табов.

Как привыкнуть к отступам

Сначала отступы кажутся придиркой, но быстро становятся привычкой и делают код читаемым. Игровые тренажёры вроде «Дрон Кодера» приучают к ним мягко: там сразу видно, что команда внутри цикла, а что — снаружи.

Частые вопросы

Сколько пробелов ставить? Стандарт — 4 пробела на один уровень вложенности.

Можно ли табами? Лучше только пробелы и не смешивать их с табами — это частая причина ошибки.

Начать игру бесплатно
Попробуй прямо здесь
Уровень 1

Задание