← Все вопросы

Как ввести несколько чисел в одну строку через input().split()?

Задан 5 месяцев назад892 просмотров4 ответа
20

На вход даётся строка 3 5 8, нужно прочитать все три числа за один input(). Знаю про input().split(), но как сразу получить int, а не строки?

4 ответа

31
✓ Принятый ответ — помог автору

split() режет строку по пробелам и даёт список строк, поэтому их ещё нужно превратить в числа через map(int, ...):

# для трёх известных чисел
a, b, c = map(int, input().split())

# для произвольного количества — в список
nums = list(map(int, input().split()))

Если разделитель не пробел, а, например, запятая — input().split(','). Для дробных вместо int бери float.

Аслан Меремуков Если чисел заранее не знаешь сколько — только list(map(...)) · 4 месяца назад
Кристина Киселёва map(int, ...) — то, что нужно знать каждому олимпиаднику · 4 месяца назад
11

map(int, input().split()).

5

Можно и без map: [int(x) for x in input().split()] — то же самое, чуть длиннее.

-3

Просто input().split() достаточно.

Валерий Курочкин Нет, это оставит строки — сложить как числа не получится, нужен map(int, ...) · 5 месяцев назад

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект