我正在使用Tkinter-Canvas制作数学图。它是这样工作的: 首先,用户输入一个数学函数,就像:y = 5 * x + 3。 然后,该程序在Tkinter-Canvas上创建一个图形以向我们展示该功能。我的问题是,我无法获得函数的y值。
到目前为止,我已经尝试创建一个范围并将函数中的“ x”设置为范围对象。看起来像这样:
yPre=input('Enter function: y = ')
for i in range(-100, 100, 1):
x=i
我已经结帐了,
func='3*5+6'
exec('print('+func+')')
输出:21.因此,我只是想:“现在我必须导入模块re,用i的字符串替换'x',即y。但是exec(something)返回None,而不是字符串。并且我无法将元素作为变量打印出来。 但是,这应该是我的代码:
import tkinter as tk, re
# … Canvas, Buttons, Widgets, …
yPre=input('Enter function: y = ')
for i in range(-100, 100, 1):
x=i
yPre=re.sub('x', str(i), yPre)
y=exec(yPre) # (Or whatever it should be)