【发布时间】:2015-11-26 07:32:48
【问题描述】:
def evaluate(x):
number = str(eval(entry_drones.get()))
if x == drones :
create_drone(number)
entry_drones = Entry(frame, text = "1")
entry_drones.bind("<Return>", evaluate(drones))
我有一个程序会产生如下错误:
number = str(eval(entry_drones.get()))
File "<string>", line 0
^
SyntaxError: unexpected EOF while parsing
我尝试在线搜索答案,但他们说我要么缺少括号(我无法找到需要它的位置),要么我使用 input 而不是 raw_input(似乎都不是原因这个错误,至少据我所知)
我只发布了我认为与问题相关的代码,但如果需要,我可以提供更多。请注意,我导入了数学和 Tkinter 以及其他东西。
我使用了eval,因为这是我知道(由于经验有限)从我的 Entry 小部件中获取输入并在通过另一个函数运行它之前对其进行简化的唯一方法。
至于无人机,它让我的评估函数知道将number 传递给哪个函数。我剪掉了所有其他选项,因为它是重复的,并且都导致了这个功能。 entry_drones 可以放入基本表达式,例如 10 * 10 或其他东西。在我的代码中我设置了k = 1000 等等,允许我使用字母来缩写。
每当按下 Enter 键时,entry_drones.get() 应该(如果我没记错的话)抓取输入到 Entry 小部件中的任何内容。
【问题讨论】:
-
你为什么用
eval? -
drones是什么?你在entry_drones里面放了什么? -
有人声称
eval()确实有一些有效的用途。我不相信他们会认为这是其中之一。 -
entry_drones.get()返回什么?
标签: python string tkinter python-2.x eof