使用Python eval()评估表达式时语法错误
我在这段代码中遇到了关于eval()这个Python函数的问题:
f = 'x'
f = raw_input('f(x)=')
def ytest(y,x,f):
if y >= eval(f)
return 1
else
return 0
我知道使用eval()不是个好办法,但我这个简单的程序只有我一个人会用。每次我运行这个程序时,都会出现以下错误:
File "C:\Users\Grant\Desktop\Plotter\plotter.py", line 9
if y >= eval(f)
^
SyntaxError: invalid syntax
为什么会出现这个错误?如果f是一个有效的Python表达式的字符串形式,难道代码就不应该有效吗?
即使我把eval(f)换成eval('0'),错误依然会出现,所以我搞不清楚问题出在哪里。