Что означает ошибка SyntaxError: expected ':'
easy

Что означает ошибка SyntaxError: expected ':'

Одна из самых частых ошибок, когда торопишься написать код на Python

Ситуация: мы пишем программу на Python, где есть функция, которая проверяет, чётное число перед нами или нет. Логика простая: делим число на 2, и если остаток равен нулю, то оно чётное и мы возвращаем True (а если нет — False). Для получения остатка используем оператор % — он делит первое число на второе и возвращает остаток от деления.

Зная это, пишем функцию:

def check(a):
    if a % 2 == 0
        return True
    else
        return False
    
print(check(4))

Но при проверке с четвёркой мы получаем ошибку:

❌ SyntaxError: expected ':'

Странно, ведь мы использовали нужный оператор и проверили очевидно чётное число, тогда в чём дело?

Что это значит: Python ожидал, что в определённом месте программы будет стоять двоеточие, которого требует синтаксис языка. Компьютер при выполнении кода его не нашёл, остановил выполнение и сообщил о том, что ему не хватает.

Что делать с ошибкой SyntaxError: expected ':'

На самом деле здесь ошибка не в операторе взятия остатка от деления или в том, что мы проверяем заведомо чётное число. Всё гораздо проще. После условного оператора if с выражением должно идти двоеточие, которое скажет компьютеру: всё, проверка условия закончена, дальше идут какие-то действия.

Чаще всего двоеточие пропускают из-за спешки: хочется поскорее перенести мысль из головы в код и проверить идею на практике. Чтобы её исправить, нужно просто поставить двоеточие после условного оператора и после else — там оно тоже нужно. 

Ставим пару двоеточий и убеждаемся, что теперь всё в порядке:

def check(a):
    if a % 2 == 0:
        return True
    else:
        return False
    
print(check(4))

Обложка:

Алексей Сухов

Корректор:

Ирина Михеева

Вёрстка:

Маша Климентьева

Соцсети:

Юлия Зубарева

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Еще по теме
easy
[anycomment]
Exit mobile version