我有一个非常简单的if子句。我尝试了所有操作,但仍然输出语法错误。
if(NOT((element.find('@') > 0) OR (element.isDigit) OR (element.find("REMINDER") > 0))):
doStuff()
现在您可以看到,它是带有3个参数的议定子句,与OR相连。我检查了参数,它们似乎起作用了。有什么想法吗?
答案 0 :(得分:3)
Python区分大小写(不需要太多的括号)。试试:
if not (element.find('@') > 0 or element.isDigit or element.find("REMINDER") > 0):
答案 1 :(得分:0)
python布尔运算符区分大小写,如您在本节中所见 the docs。
在这种情况下,您需要将NOT
和OR
的小写形式(not
和or
)替换为您的条件才能正常工作。
此外,您可以删除一些括号,条件仍然适用。您的括号是正确的,但是您也可以这样写,并得到相同的结果(用更少的字符,在我看来,这种情况下可读性更高):
if not (element.find('@') > 0 or element.isDigit or element.find("REMINDER") > 0):
doStuff()