До сих пор все значения мы вписывали в код сами. Но настоящие программы общаются с человеком: спрашивают имя, возраст, сумму заказа. За «вопрос пользователю» отвечает функцияИменованный блок кода, который можно вызывать многократно. Может принимать аргументы и возвращать результат.input() — она останавливает программу, показывает приглашение, ждёт, пока человек напечатает ответ и нажмёт Enter, и возвращает введённый текст.
▶ input.py
Разберём по шагам:
input("Как вас зовут? ") показывает текст-приглашение и ждёт ввод.
То, что человек напечатал, кладётся в переменнуюИменованное хранилище для значения. Имя связывается со значением через присваивание: x = 5.name.
print здоровается, склеивая name с восклицательным знаком.
⚠️Осторожно
Главная ловушка:input() всегда возвращает строкуТекстовое значение в кавычках: "привет". Неизменяема. По-английски string (str)., даже если человек ввёл число. Поэтому "3" + "4" из ввода даст "34", а не 7. Чтобы считать, ввод нужно превратить в число.
▶ input-number.py
Здесь int(...) оборачивает результат input() и превращает строку в число. Теперь age + 1 работает как арифметика, а не как склейка текста.
📝Заметка
В тренажёре ввод работает как на настоящих контест-платформах: значения для input() берутся из поля «Ввод (stdin)» под редактором — каждая строка поля это один вызов input(). Никаких всплывающих окон: просто заранее впишите данные построчно, и программа прочитает их сверху вниз. В реальных программах и задачах LeetCode данные чаще передаются в функцию как аргументЗначение, которое передаётся функции при вызове. Внутри функции оно доступно как параметр., поэтому input() там почти не нужен — но для маленьких самостоятельных программ это базовый инструмент.
⚠️ Частые ошибки новичков
Ошибка. Забыть int() и пытаться посчитать строки. Код ниже выведет 55 вместо 10, потому что "5" и "5" склеились. Почините: оберните каждый ввод в int().
▶ broken-input.py
Заданиерешение.py
Даны две строки a = "8" и b = "5" (как будто их ввёл пользователь). Превратите их в числа, сложите и сохраните в переменную total (должно получиться 13).
🎯 Задача с проверкой ввода-вывода
А теперь как на настоящих контест-платформах (Stepik, LeetCode, Codeforces): программа читает данные из поля «Ввод (stdin)» и печатает ответ в вывод. Проверка прогонит вашу программу на нескольких скрытых тестах и сравнит вывод с эталоном. Впишите свой ответ в поле ввода под редактором и нажмите «Отправить на проверку».
Заданиерешение.py
Программа получает на вход два целых числа, каждое на своей строке. Прочитайте их через input(), сложите и выведите сумму одной строкой.
📥 Тестируется через stdin → stdout
Пример ввода
8
5
Пример вывода
13
Всего тестов: 5. Программа читает данные функцией input() и печатает ответ через print().
❓Проверь себя
Какой тип возвращает input()?
Пользователь ввёл 7. Что выведет print(input() + input()), если потом ввёл ещё 3?
Как правильно прочитать возраст числом?
ℹ️Важно
✅ Что вы узнали
input() спрашивает пользователя и возвращает введённый текст.
Результат — всегда строка, даже если ввели цифры.
Для арифметики ввод оборачивают в int() или float().
Комментарии
Загрузка…
Загрузка комментариев…