Как проверить то что пользователь вводит число, а не слово?
У меня есть фрагмент кода:
@dp.callback_query_handler(text='per2')
async def per2_call(callback: types.CallbackQuery):
await callback.message.answer('Довжина сторони:')
await MathInput4.num7.set()
@dp.message_handler(state=MathInput4)
async def get_num(message: types.Message, state: FSMContext):
num7 = float(message.text)
await message.answer(f"Периметр дорівнює: {num7 * 4}")
await state.finish()
И когда пользователь ввел не число, а, к примеру слово, то, чтобы ему был выведен текст, например - "Введите число!!".
Заранее благодарен!
Ответы (1 шт):
Автор решения: tomato-magnet-regulato
→ Ссылка
def is_int(str):
try:
int(str)
return True
except ValueError:
return False
a = '123.456'
b = '51'
print(is_int(a))
pritn(is_int(b))
>> False
>> True
number = '10'
number.isdecimal()
>> True