Ошибка при сравнении строк
Дата публикации: 14.04.2025

Ошибка при сравнении строк

820c0b0b

Содержимое статьи:

Проблема: Код выдает ошибку "Разное количество строк: out = 0, corr = 1" при сравнении строк.
Код:

input_string = input()
if "вор" in input_string and "ворон" not in input_string:
print("Полиция!")
elif "ворон" in input_string:
print("Кар!")

Анализ: Ошибку вызывает несоответствие количества операторов print в ветвях if и elif. В ветви if используется один оператор print, а в ветви elif - два. Это приводит к рассинхронизации вывода и ожидаемого количества строк.
Решение: Исправить ошибку можно либо добавив недостающий оператор print в ветвь if, либо удалив лишний оператор print из ветви elif.
Исправленный код: Добавить оператор print в ветвь if:

if "вор" in input_string and "ворон" not in input_string:
print("Полиция!")
print() # Добавить пустую строку для выравнивания
elif "ворон" in input_string:
print("Кар!")

Или удалить лишний оператор print из ветви elif:

if "вор" in input_string and "ворон" not in input_string:
print("Полиция!")
elif "ворон" in input_string:
print("Кар!") # Удалить один из операторов `print`