函数eval(' 4> 1 AND 5> 1')返回语法错误,并在AND的末尾带有标记。为什么呢?
答案 0 :(得分:-1)
在口译员中试试这个。
>>> 4>1
True
>>> 5>1
True
>>> 4>1 and 5>1
True
>>> eval('4>1 and 5>1')
True
然而,你所做的是:
>>> 4>1 AND 5>1
SyntaxError: invalid syntax
所以当你这样做时,
>>> eval('4>1 AND 5>1')
Traceback (most recent call last):
File "<pyshell#16>", line 1, in <module>
eval('4>1 AND 5>1')
File "<string>", line 1
4>1 AND 5>1
^
SyntaxError: invalid syntax
>>>
你得到错误。将AND
更改为and
,应该没问题。