Функция input()

Тренажер по Python для пользователей с начальным уровнем подготовки.

Тренажер по Python

В этом уроке мы познакомимся с одной из ключевых функций Python — `input()`. Она позволяет программам "общаться" с пользователем, запрашивая у него данные прямо во время выполнения. Без ввода данных большинство программ были бы просто набором инструкций с заранее известным результатом. Мы научимся не только получать информацию от пользователя, но и правильно её обрабатывать. Вы узнаете, почему данные, полученные через `input()`, требуют особого внимания и как превратить их из обычного текста в числа для математических операций. Эти задания помогут вам создавать по-настоящему интерактивные и полезные программы.

Список тем

Первый ввод данных

id: 39970_task_input_1

Напишите простейшую программу, которая запрашивает имя пользователя и выводит приветствие. Для этого вам нужно использовать функцию, которая считывает строку из консоли. Заполните пропуск, чтобы программа заработала.

Заполните пропуски
# Запрашиваем имя пользователя
user_name = input1S("Как вас зовут? ")

# Выводим приветствие
print(f"Здравствуйте, {user_name}!")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Сборка программы-диалога

id: 39970_task_input_2

Соберите из фрагментов кода программу, которая сначала спрашивает у пользователя его любимый цвет, а затем выводит ответ. Помните о правильной последовательности: сначала нужно получить данные, а уже потом их использовать. Одна из строк лишняя.

Перетяните в правильном порядке строки из одного блока в другой
print(f"Отличный выбор! {fav_color} — красивый цвет.")
fav_color = input("Какой ваш любимый цвет? ")
print(fav_color)
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Ошибка типов: строка и число

id: 39970_task_input_3

В этом коде есть ошибка. Программа запрашивает год рождения и пытается вычислить возраст, вычитая его из текущего года. Однако `input()` возвращает строку, а не число. Найдите строку с ошибкой и исправьте её, преобразовав полученные данные в числовой тип.

Найдите ошибку и исправьте
current_year = 2024
birth_year_str = input("В каком году вы родились? ")
age = current_year - birth_year_str
print(f"Значит, вам примерно {age} лет.")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Что выведет этот код?

id: 39970_task_input_4

Проанализируйте код. Программа запрашивает два числа и складывает их. Учитывая, что пользователь последовательно вводит '10' и '5', какой результат будет выведен на экран? Введите ответ в поле.

Что должно получиться?
# Пользователь вводит: 10
num_str_1 = input("Первое число: ")

# Пользователь вводит: 5
num_str_2 = input("Второе число: ")

result = num_str_1 + num_str_2
print(result)
Сообщения
Проверить
Показать подсказку

Явное преобразование типов

id: 39970_task_input_5

Чтобы избежать ошибок, как в предыдущих заданиях, нужно явно преобразовывать типы данных. Дополните код, используя правильные функции для преобразования возраста в целое число, а роста — в число с плавающей точкой.

Заполните пропуски
age_str = input("Ваш полный возраст: ")
height_str = input("Ваш рост в метрах (например, 1.75): ")

# Преобразуем строки в числа
age_num = input1S(age_str)
height_num = input2S(height_str)

print(f"Тип переменной age_num: {type(age_num)}")
print(f"Тип переменной height_num: {type(height_num)}")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Калькулятор площади круга

id: 39970_task_input_6

Восстановите правильный порядок строк, чтобы получилась программа для вычисления площади круга по радиусу, введенному пользователем. Формула площади: S = π * r². Будем считать π равным 3.14159.

Расставьте строки в правильном порядке
radius = float(radius_str)
print(f"Площадь круга: {area}")
radius_str = input("Введите радиус круга: ")
area = 3.14159 * (radius ** 2)
Сообщения
Проверить
Показать подсказку

Два числа в одной строке

id: 39970_task_input_7

В этом примере пользователь вводит два числа в одну строку через пробел. Функция `input().split()` разделяет строку на части и создает список строк. Затем `map(int, ...)` применяет функцию `int` к каждому элементу списка. Что выведет `print(a + b)`?

Выберите правильный вариант ответа
# Пользователь вводит: 5 7
a, b = map(int, input("Введите два числа через пробел: ").split())

print(a + b)
Сообщения
Проверить
Показать подсказку

Соберите строку запроса

id: 39970_task_input_8

Соберите работающую строку кода из банка токенов. Программа должна запросить у пользователя его город и сохранить ответ в переменную `city`. Используйте элементы из банка, чтобы заполнить пропуски. Один из токенов лишний.

Нужно правильно расставить в пропуски предложенные варианты
city = input1S(input2S)
input
"Из какого вы города?"
print
=
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Сопоставьте функцию и её результат

id: 39970_task_input_9

Функция `input()` и функции преобразования типов — это связка, которую вы будете использовать постоянно. Сопоставьте код в правой колонке с типом данных, который окажется в переменной `result` после его выполнения. Предполагается, что пользователь вводит `123`.

Сопоставьте строки в правой части с соответствующими строками в левой по порядковому номеру
Целое число (integer)
Строка (string)
Число с плавающей точкой (float)
result = input('Ввод: ')
result = int(input('Ввод: '))
result = float(input('Ввод: '))
Сообщения
Проверить
Показать подсказку
НайтиКурс.Ру