我正在尝试自己编写一个程序来计算取自Tk.Entry()的函数
问题是,当我尝试运行我的display()函数
时
(它运行Tkinter,设置窗口,并调用root.Mainloop()),
如果用户输入所有变量并按下按钮(按钮的命令),我会从一个应该被称为 的函数中获得来自eval()的解析错误。
该函数使用eval(变量),而变量是entry.get()
我在这里做错了什么?
def cfunc(_n,_f,_t0,_tn,):
xbase=[]
tbase=[]
t=0
n2=eval(_n) #Stuff happens here, cfunc gets entry_n.get() as arguments.
f2=_f #Also, tabs are correct in the original.
tmin2=eval(_t0)
tmax2=eval(_tn)
tr=tmax2-tmin2
sk = tr / n2
i2=tmin2
另外,错误:
文件“Q:\ Py \ counter.py”,第89行,中 cfunc n2 = eval(_n)文件“”,第0行 ^ SyntaxError:解析时意外的EOF
答案 0 :(得分:1)
您没有向我们展示导致错误的代码(_n的值),因此我们只能猜测。几句忠告:
错误消息告诉您问题:意外的eof。这意味着缺少结束报价或支撑或类似的东西。解析器在获得预期的字符之前到达“文件”的末尾(字符串被eval'd)。
在eval之前放置一个print语句,并使用一些特殊字符来分隔它(例如:puts“>>> $ _ n<<<<”),这样你就可以确切地知道是什么在被评估的字符串中,包括任何前导或尾随空格。