Форум программистов, компьютерный форум, киберфорум
Python: Научные вычисления
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/55: Рейтинг темы: голосов - 55, средняя оценка - 4.65
1 / 1 / 0
Регистрация: 25.02.2018
Сообщений: 6
1

Как преобразовать текстовую строку типа (y = x + 2) в уравнение чтобы можно было посчитать его зная x

02.03.2018, 00:29. Показов 9959. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уважаемые коллеги, подскажите пожалуйста как решить такую задачу.

Пользователь вводит в QTextEdit текст типа "y = x + 2" или, например, "y=2**x+7+10+8**x" в общем какое либо уравнение
затем по нажатии кнопки текст считывается в строковую переменную function.

с помощью numpy.arange создается список x = np.arange(left_limit, right_limit, step)

А теперь собственно загвоздка.

Необходимо рассчитать список "y" исходя из уравнения, которое считанно в виде строки в переменную function.

То есть символ x в строке надо как то заменить на переменную x и посчитать уравнение определив y.

Голову себе уже сломал, но чувствую должно быть какое-то простое решение.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.03.2018, 00:29
Ответы с готовыми решениями:

Нужно преобразовать предел так, чтобы его можно было посчитать по Лопиталю
Добрый день, мне нужно преобразовать предел \lim_{x\rightarrow 0}{ctgx}^{sinx} так, чтобы его можно...

Как преобразовать уравнение, чтобы можно было найти матрицу B
дано уравнение с матрицами http://imagеs.vfl.ru/ii/1554665987/c8630a5e/26100218_m.png и дана...

Как преобразовать файл в биты (в нули и единицы), чтобы потом можно было его зашифровать в код Грея?
Добрый день всем! У меня к вам несколько вопросов, которые касаются следующего: В институте дали...

Как преобразовать математическое уравнение в, введенное в lineEdit, в код и посчитать его?
Вопрос такой. Есть LineEdit, в него вводится выражение, например 4*5-10/2 и нужно чтобы программа...

Как сделать чтобы контролы типа Button можно было перетаскивать по форме?
Пока только начинаю разбираться в Delphi перерыл кучу примеров и уроков но не смог найти...

3
578 / 411 / 68
Регистрация: 09.01.2018
Сообщений: 1,363
02.03.2018, 11:30 2
Если исходить из того, что функция вводиться без синтаксических и семантических ошибок, и если исходить из того, что в этой введенной функции независимая переменная всегда "х", то имем
Python
1
2
3
equal=input("Введите правую(!!!) часть уравнения:")
for x in np.arange(left_limit, right_limit, step):
    print(eval(equal))
1
Эксперт Python
5434 / 3857 / 1215
Регистрация: 28.10.2013
Сообщений: 9,553
Записей в блоге: 1
02.03.2018, 15:28 3
Для numpy объектов существует специальное расширение - numexpr

Python
1
2
3
4
5
6
7
>>> import numpy as np
>>> import numexpr as ne
>>> a = np.arange(10)
>>> b = np.arange(0, 20, 2)
>>> c = ne.evaluate("2*a+3*b")
>>> c
array([ 0,  8, 16, 24, 32, 40, 48, 56, 64, 72])
1
1 / 1 / 0
Регистрация: 25.02.2018
Сообщений: 6
05.03.2018, 22:50  [ТС] 4
Уважаемые коллеги, большое спасибо Вам за ответы.
Наиболее подходящим мне показался пример номер два
его я и реализовал в своей программе. Если кому нибудь интересно как я использовал ответ для своей программы,
то подготовил видео https://youtu.be/SLwvwnqet6Y, в котором использую библиотеку numexpr для преобразования функции которую пользователь вводит в QTextEdit для ее отображения на рисунке Matplotlib.
0
05.03.2018, 22:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.03.2018, 22:50
Помогаю со студенческими работами здесь

Как сделать, чтобы можно было редактировать строку в файле?
всем привет , а как реализовать скрипт про редактирование строк в файле ? я создал форму и вот...

Как привести первое уравнение к такому виду, чтобы в него можно было подставить поток?
есть уравнение для контура вторичной обмотки трансформатора напряжения {dF \over dt}...

Префаб. Как создать чтобы его можно было открыть?
Сохраняю префаб, он сохраняется не как папка. 1 картинка - как мне надо 2 картинка - как...

Как преобразовать текстовую строку в формулу?
Здравствуйте! Пожалуйста помогите разобраться с проблемой. В Excel в ячейке например А1 есть...

Подскажите как преобразовать уравнение чтобы начать решать его численным методом
Уравнение для определения угла phi: 2*(1+alfa*deltaT)*sin(phi\2)-phi=0 Насколько я понимаю...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru