Как обрабатывать математическую функцию? В общем на вход будет вводиться математическое выражение, в котором будет вычисляться Y и есть X (при помощи цикла будет пробегаться по списку иксов и подставляться). После с помощью списков x-ов и y-ов будет построен график.
Как безопаснее всё это сделать? Подскажите

21 Авг 2019 в 06:09
149 +1
0
Ответы
1

Для безопасного выполнения математических выражений, введенных пользователем, можно использовать библиотеку eval в Python. Это позволит безопасно вычислять математические выражения, которые вводит пользователь.

Пример кода:

import matplotlib.pyplot as plt
import numpy as np
# Ввод математического выражения
expr = input("Введите математическое выражение: ")
# Создание списка значений X
x = np.linspace(-10, 10, 100)
# Вычисление значений Y
y = [eval(expr) for x_val in x]
# Построение графика
plt.plot(x, y)
plt.xlabel('X')
plt.ylabel('Y')
plt.title('График функции ' + expr)
plt.grid(True)
plt.show()

При использовании функции eval следует быть осторожным, чтобы не допустить выполнения вредоносного кода или несанкционированного доступа к системе. Возможно также ограничить доступные операции и функции, которые могут быть использованы в математическом выражении.

20 Апр в 13:23
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 436 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир