Системное администрирование

SyntaxError: bad input on line 9 in main.py ошибка в питоне

a=input("Включаются ли фары?")
if a=="да":
q=input("Могут ли они светить ближним светом в диапазоне от 0м до 270м?")
elif q=="да":
z=input("А дальним светом в диапазоне от 0м до 550м?")
elif z=="да":

else: здесь ошибка
print("Фары успешно прошли проверку!")
Ты не понимаешь, как работает elif - потому, твой код изначально ошибочен.
А обнаружена ошибка из-за того, что после последнего elif нет выполняемого кода, а сразу идёт else - что в Python запрещено.

После двоеточия в операторах обязательно должно быть что-то выполняемое. Хотя бы оператор pass - который ничего не делает, но занимает положенное место.
 for q in [
'Включаются ли фары? ',
'Могут ли они светить ближним светом в диапазоне от 0м до 270м? ',
'А дальним светом в диапазоне от 0м до 550м? '
]:
if input(q) != 'да': break
else: print('Фары успешно прошли проверку!')
ЕШ
Евгений Шумов
89 268
Лучший ответ
Ваш код содержит ошибку в последнем блоке `else`. Python ожидает, что после `else` будет двоеточие, а затем выполнение какого-либо действия. Вот исправленный код:


a = input("Включаются ли фары?")
if a == "да":
q = input("Могут ли они светить ближним светом в диапазоне от 0м до 270м?")
if q == "да":
z = input("А дальним светом в диапазоне от 0м до 550м?")
if z == "да":
print("Фары успешно прошли проверку!")
else:
print("Фары не прошли проверку на дальний свет.")
else:
print("Фары не прошли проверку на ближний свет.")
else:
print("Фары не включаются, проверка не пройдена.")


Теперь код будет корректно работать, и вы сможете проверить фары на соответствие условиям.
Вова Алексеев
Вова Алексеев
14 368
Данил Дьяченко 3 строка некоректна