Как вводить разные типы чисел в input() без указания типа?

необходимо создать две функции input()

a = input()
b = input()

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


Ответы (2 шт):

Автор решения: CrazyElf

Можно и одну универсальную функцию сделать, просто передавать в неё нужный тип в зависимости от условий:

def typed_input(prompt, dtype):
    while True:
        try:
           return dtype(input(f'{prompt}: '))
        except:
           print('Ошибка ввода!')

x = typed_input('Введите целое число', int)
y = typed_input('Введите дробное число', float)

Тип в питоне может быть присвоен в обычную переменную, так что вы можете выбрать и передать в функцию нужный тип в зависимости от ваших условий.

→ Ссылка
Автор решения: lerm_on_t_off

Попробуйте уже на этапе обработки полученных данных конвертировать в нужный формат. А ввод пусть идёт любой.

→ Ссылка