Главная страница » Ввод данных python

Ввод данных python

В Python для ввода данных от пользователя используется встроенная функция Input(). Она позволяет приостановить выполнение программы, запросить у пользователя ввод с клавиатуры, а затем вернуть введенные данные в виде строки.

Основы использования input()

Функция input() очень проста в использовании:

Python

# 1. Простой запрос ввода
Name = input("Введите ваше имя: ")
Print(f"Привет, {name}!")
 
# 2. Ввод числа (помните, input() всегда возвращает строку!)
Age_str = input("Введите ваш возраст: ")
Print(f"Вы ввели возраст как строку: {age_str} (тип: {type(age_str)})")
 
# Чтобы использовать введенное число как число, его нужно преобразовать (кастовать)
Try:
 age = int(age_str) # Преобразуем строку в целое число
 print(f"Ваш возраст: {age} (тип: {type(age)})")
 print(f"Через 5 лет вам будет: {age + 5}")
Except ValueError:
 print("Ошибка: Вы ввели не число для возраста.")
 
# 3. Ввод числа с плавающей запятой
Height_str = input("Введите ваш рост в метрах (например, 1.75): ")
Try:
 height = float(height_str) # Преобразуем строку в число с плавающей запятой
 print(f"Ваш рост: {height} м")
Except ValueError:
 print("Ошибка: Вы ввели не число для роста.")

Важные моменты про input():

1. Всегда возвращает строку: Это ключевой момент. Независимо от того, что ввел пользователь (числа, буквы, символы), input() всегда вернет это в виде Строки. Если вам нужно использовать введенные данные как числа (целые или с плавающей запятой), логические значения и т. д., вам придется явно преобразовать их с помощью функций, таких как int(), float(), bool().

Python

Num_str = input("Введите число: ") # Пользователь ввел "123"
# num_str теперь "123", а не число 123
 
# Попытка выполнить математическую операцию без преобразования вызовет ошибку:
# print(num_str + 5) # TypeError: can only concatenate str (not "int") to str
 
Num_int = int(num_str) # Преобразование в int
Print(num_int + 5) # 128

2. Аргумент-подсказка: Вы можете передать строку в качестве аргумента функции input(). Эта строка будет отображена пользователю в качестве подсказки о том, что от него ожидается.

Python

Favorite_color = input("Какой ваш любимый цвет? ")
Print(f"Вы любите {favorite_color}.")

3. Обработка ошибок ввода: Поскольку input() возвращает строку, а вы часто пытаетесь преобразовать ее в другой тип, важно использовать блоки try-except для обработки возможных ошибок ValueError. Это происходит, если пользователь вводит данные, которые не могут быть корректно преобразованы (например, вводит "abc" вместо числа).

Python

While True:
 user_input = input("Введите целое число: ")
 try:
 number = int(user_input)
 print(f"Вы ввели число: {number}")
 break # Выходим из цикла, если ввод корректен
 except ValueError:
 print("Некорректный ввод. Пожалуйста, введите именно целое число.")

size=2 width=»100%» align=center data-sourcepos=»70:1-70:3″>

Примеры использования:

Получение нескольких значений:

Python

# Разделение ввода по пробелу (например, пользователь ввел "10 20 30")
Numbers_str = input("Введите три числа через пробел: ")
Numbers_list_str = numbers_str. split() # Разделяем строку по пробелам
 
# Преобразуем каждую строку в число
Numbers = []
For s in numbers_list_str:
 try:
 numbers. append(int(s))
 except ValueError:
 print(f"Одно из введенных значений '{s}' не является числом.")
 numbers = [] # Очищаем список, если есть ошибка
 break
 
If numbers: # Проверяем, что список не пуст после возможных ошибок
 print(f"Ваши числа: {numbers}")
 print(f"Сумма: {sum(numbers)}")

Запрос подтверждения (Да/Нет):

Python

Response = input("Вы хотите продолжить? (да/нет): ").lower().strip()
 
If response == "да":
 print("Продолжаем...")
Elif response == "нет":
 print("Останавливаемся.")
Else:
 print("Непонятный ответ. Пожалуйста, введите 'да' или 'нет'.")

Вывод:

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

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх