Простая математика в Python

Я пишу консольную программу для решения математических операций и столкнулся проблемой
Постараюсь объяснить как смогу

def base(equation):
    ''' Функция в которую мы передаём простое математическое уравнение по типу 100-23'''
    if '%n' in str(equation):
        ''' Если в строке есть %n то пользователь просит найти процент от числа'''
        percentage_of_number = str(equation).split()
        return float(percentage_of_number[2]) / 100 * float(percentage_of_number[0])

И ниже проблема -> если пользователь не хочет найти процент от числа то мы выводим ему переменную
Которая как я думал должна выводится в решённом формате, но нет
при вводе уравнения по типу 100-23 не находя в нём %n программа выводит уравнение в первоначальном виде

    else:
        ''' Отдаём изначальное уравнение '''
        return equation

Если нужны более подробные объяснения пишите в комментарии к вопросу


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

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

Для получения результата выражения можно использовать eval:

expression = "123 - 32"

print(eval(expression))

Но не забывайте что eval выполняет python код, поэтому если вы используете его для бэкенда это не безопасно.

→ Ссылка