Напишите функцию, которая будет возвращать True, если переданная строка (например, "5 + 4"
) является математическим выражением. В противном случае функция должна возвращать False.
Примечания:
- из операторов учитываем только +, -, *, /, %
- в переданной строке будет максимум два числа
- оба числа будут целыми, из диапазона 0-9
Примеры
math_expr("4 + 5") ➞ True math_expr("4*6") ➞ True math_expr("4*no") ➞ False
Варианты решений
def math_expr(expr): return all(ch in '0123456789 +-*/%' for ch in expr)
def math_expr(expr): try: return isinstance(eval(expr), (int, float)) except NameError: return False