Ввод, преобразования и логика
Что это и зачем
input читает строку, даже если пользователь вводит цифры. Преобразование — явная операция, которая может завершиться ошибкой.
Как это работает
int('12') разбирает целое, float('1.5') — дробь, str(12) создаёт текст. bool определяет истинность: пустые коллекции, 0, None и пустая строка ложны. and и or вычисляются сокращённо и возвращают один из операндов.
print(int('12') + 3)
Когда применять
Для интерфейса ввода разделите получение строки и обработку значения. Валидируйте пустой ввод и диапазон. Для булева поля разбирайте допустимые слова явно: bool('false') всё равно True.
Границы применения
int('3.5') не разбирает дробную строку. input без доступного stdin может вызвать EOFError. В лаборатории замените input константой или используйте поле stdin при серверной проверке.
Ошибки и лучшие практики
int(float_value) отбрасывает дробную часть к нулю. == проверяет равенство, is — идентичность; не сравнивайте строки через is. Логические выражения не обязаны возвращать bool.
Понятна идея? Теперь проверим её в действии.