input() – це вбудована функція Python, яка використовується для отримання даних, які вводить користувач під час виконання програми. Після виклику input() виконання програми призупиняється, доки користувач не введе значення і не натисне Enter. Результат роботи функції – рядок, який можна зберегти в змінну й надалі обробляти.

Синтаксис функції input()

Базовий вигляд виклику:

input(prompt)

prompt – необов’язковий аргумент-рядок.
Якщо він переданий, текст prompt відображається на екрані перед тим, як програма чекатиме введення користувача.

Приклади:

name = input('Enter your name: ')
age = input('Enter your age: ')

Якщо викликати input() без аргументів, нічого виведено не буде – програма просто чекатиме введення:

data = input()

Базовий приклад

Найпростіший спосіб використання input() – викликати функцію і зберегти її результат у змінну:

user_name = input('Введіть ваше ім\'я: ')

print(f'Привіт, {user_name}!')

Як це працює:

  • Програма виводить на екран повідомлення-підказку "Введіть ваше ім'я: ". Це повідомлення називається промпт (англ. prompt).
  • Виконання коду призупиняється, поки користувач не введе текст і не натисне Enter.
  • Введене значення зберігається у змінну user_name як рядок (str).

Усі введені значення – це рядки

Функція input() завжди повертає рядок (str), навіть якщо користувач вводить число:

age = input('Enter your age: ')

print(type(age))  # <class 'str'>

Тому якщо потрібно працювати з числовими значеннями, введений текст необхідно перетворити на число за допомогою int() або float():

age = int(input('Enter your age: '))

print('Next year you will be', age + 1)

У цьому прикладі:

  • input() отримує введений текст
  • int() перетворює його на ціле число
  • програма може виконувати обчислення

Type Casting (приведення типів) у Python

Обробка кількох значень

Іноді потрібно зчитати від користувача кілька значень за один раз. Це можна зробити, якщо користувач введе дані, розділені пробілами, а потім розділити їх за допомогою методу .split():

x, y = input('Enter two numbers: ').split()

print(x, y)

У цьому прикладі користувач вводить два значення через пробіл, split() розділяє рядок на частини, після чого кожна частина присвоюється змінним x та y.

Якщо ж потрібно працювати саме з числами, значення слід одразу перетворити за допомогою map():

x, y = map(int, input('Enter two numbers: ').split())

print(x + y)

Функція map в Python

Python string – метод split()

Використання зі strip()

Під час введення користувач може випадково додати зайві пробіли або натиснути Space перед/після тексту. Щоб прибрати такі символи, зручно використовувати метод .strip():

text = input('Enter something: ').strip()

print(f'You entered: "{text}"')

.strip() видаляє пробіли на початку та в кінці рядка (а також символи нового рядка \n або \r, якщо вони є), у результаті чого ми отримуємо «чистий» текст.

Підсумок

ЗавданняПриклад
Зчитати рядокname = input()
Зчитати з промптомvalue = input('Enter value: ')
Зчитати числоage = int(input())
Кілька значеньx, y = input().split()
З очищеннямtext = input().strip()