Числа в одному рядку
Часто числа вводять в одному рядку через пробіл: 5 7 чи 12 3 8 1. Як їх отримати?
Крок 1: split
input().split() розрізає рядок на частини за пробілами й повертає список рядків:
s = "12 3 8" parts = s.split() # ['12', '3', '8'] — це рядки, не числа! print(parts[0] + parts[1]) # 123 — рядки склеїлися
Крок 2: перетворити на числа
Можна циклом:
parts = input().split() nums = [] for p in parts: nums.append(int(p))
А можна коротко — функцією map: вона застосовує int до кожного елемента.
nums = list(map(int, input().split())) # [12, 3, 8]
Для дробових — map(float, ...).
Два-три числа в одному рядку
Якщо відомо, скільки чисел, їх можна одразу розкласти по змінних:
a, b = map(int, input().split()) # ввели: 5 7 → a = 5, b = 7 h, m, s = map(int, input().split()) # ввели: 1 20 30
⚠ПАСТКА
Кількість змінних має збігатися з кількістю чисел. Ввели три числа, а змінних дві — буде
ValueError.Перевір себе: 10 задач з автоперевіркою
▶ Розв'язувати задачіПідказки після помилок, розбір кожної задачі, бали й звання. Безкоштовно, можна без реєстрації.