Eval(AND表达式)返回无效的语法错误

时间:2017-07-01 08:23:54

标签: python

函数eval(' 4> 1 AND 5> 1')返回语法错误,并在AND的末尾带有标记。为什么呢?

1 个答案:

答案 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,应该没问题。