Как поместить два разных типа ввода в одну строку? - PullRequest
1 голос
/ 27 марта 2020

Я хочу ввести два или более различных типов чисел (с плавающей точкой и целое число) в одной строке.

Например, я знаю, что могу сделать это: a, b = map(int, input().split())

Но это даст мне два целых числа, я хочу, чтобы это было целое число и число с плавающей точкой. Есть ли способы поместить два или более разных типов данных в разделенный ввод?

1 Ответ

1 голос
/ 28 марта 2020

Вот одно из решений:

a, b, c = list( t(v) for (t, v) in zip( [type1, ..., typeN], input().split()) )

Объяснение

Идея заключается в использовании понимания списка для связи type function и input value заказано.

Для этого мы zip список предопределенных type functions с его спецификацией c input value, выбрасывая каждую пару для отображения.

В результате получается список с уже введенными значениями, поэтому вы можете распаковать его, чтобы назвать каждое из них в переменной

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...