Перейти к основному содержимому

Пользовательский ввод

Ваши программы могут получать информацию от того, кто ими пользуется.

Иначе говоря, вы можете попросить пользователя что-то ввести.

Дойдя до функции input(), Python останавливается и продолжает работу только после того, как пользователь что-то ввёл.

Следующий пример запрашивает имя и, когда вы его введёте, выводит его на экран:

Пример

Запросите ввод у пользователя:

Prompt
Напишите программу на Python, которая запрашивает ввод у пользователя. Выведите «Введите ваше имя:», прочитайте ввод и поприветствуйте пользователя.
Вывод: полная программа на Python

Использование подсказки

Выше имя приходилось вводить на новой строке. Функция input() также принимает параметр prompt — сообщение, которое показывается прямо перед местом ввода, на той же строке:

Пример

Покажите сообщение перед вводом:

Prompt
Напишите программу на Python, которая использует input() с параметром prompt. Используйте «Введите ваше имя:» в качестве подсказки и поприветствуйте пользователя.
Вывод: полная программа на Python

Несколько вводов

Программа может запрашивать ввод сколько угодно раз. При каждом запросе Python останавливается, пока пользователь не ответит:

Пример

Запрос нескольких вводов:

Prompt
Напишите программу на Python с несколькими вызовами input(). Запросите имя, любимое животное, цвет и число, затем объедините их.
Вывод: полная программа на Python

Ввод числа

Всё, что вводит пользователь, поступает в виде строки. Это касается и чисел, например любимого числа из примера выше: интерпретатор всё равно видит строку.

Чтобы получить настоящее число, передайте ввод в функцию float():

Пример

Для вычисления квадратного корня нужно число, поэтому ввод сначала преобразуется:

Prompt
Напишите программу на Python, которая преобразует ввод пользователя в число. Запросите число, преобразуйте его с помощью float() и вычислите его квадратный корень.
Вывод: полная программа на Python

Проверка ввода

Проверять то, что ввёл пользователь, — хорошая практика. В примере выше ввод чего-либо, кроме числа, вызывает ошибку.

Этого можно избежать, если сначала проверить ввод. Когда это не число, пользователь может увидеть сообщение вроде «Wrong input, please try again» и получить ещё одну попытку:

Пример

Повторяйте вопрос, пока пользователь не введёт число:

Prompt
Напишите программу на Python, которая проверяет ввод пользователя. Запрашивайте ввод, пока пользователь не введёт корректное число, используя цикл while и try/except.
Вывод: полная программа на Python