Как посчитать выражение в питоне

Обновлено: 18.05.2024

Есть строка, содержащая математическое выражение вида:

Есть ли модуль, который вычисляет значение таких выражений?


48.7k 146 146 золотых знаков 53 53 серебряных знака 209 209 бронзовых знаков задан 29 ноя '16 в 10:21 fellzo fellzo 673 5 5 серебряных знаков 14 14 бронзовых знаков 29 ноя '16 в 11:35 Связанный вопрос: Evaluating a mathematical expression in a string 30 ноя '16 в 2:21 2 мар '17 в 14:48

С точки зрения безопасности (как уже сказал @Batanichek - с eval() нужно быть очень осторожным), производительности и гибкости лучше воспользоваться numexpr:

Он, кстати, быстрее для более сложных вычислений, поддерживает использование переменных, поддерживает NumPy, SciPy и т.д.

Numexpr поддерживает многопоточные вычисления (используя все доступные ядра процессора) и VML от Intel (Vector Math Library, который интегрирован в интеловский же Math Kernel Library (MKL)) .

Читайте также: