как я могу ввести оператор в переменную и заменить сложение или умножение другим символом?
Я рекомендую вам изучить модуль Python operator.py.Вот простой пример, который просто показывает четыре основные операции калькулятора:
import operator
from random import randint
operations = {
'+': operator.add,
'-': operator.sub,
'*': operator.mul,
'/': operator.truediv,
}
a, b = randint(0, 100), randint(0, 100)
while True:
operation = input("Enter an operation (+, -, * , / or 'quit') ")
if operation in operations:
c = operations[operation](a, b)
print("{} {} {} = {}".format(a, operation, b, c))
elif operation == 'quit':
break
else:
print("try again")
Чего не следует делать, так это рассмотреть eval
.Вы не должны открывать свой код для чего-либо, а только для некоторого разумного и безопасного предопределенного набора операций.
USAGE
> python3 test.py
Enter an operation (+, -, * or /) +
25 + 97 = 122
Enter an operation (+, -, * or /) -
25 - 97 = -72
Enter an operation (+, -, * or /) *
25 * 97 = 2425
Enter an operation (+, -, * or /) /
25 / 97 = 0.25773195876288657
Enter an operation (+, -, * or /) quit
>