我来自一个javascript后端到Python,我遇到了一个基本但令人困惑的问题
我有一个字符串,可以包含'left','center'或'right'的值。我试图测试变量是否包含'left'或'right'。
简而言之:
if( str === 'left' || str === 'right' ){}
然而,在python中我得到了一个语法错误:
if str == 'left' || str == 'right':
为什么这不起作用,什么是正确的语法?
答案 0 :(得分:11)
Python的logical OR operator称为or
。没有||
。
if string == 'left' or string == 'right':
## ^^
BTW,在Python中,这种测试通常写成:
if string in ('left', 'right'):
## in Python ≥3.1, also possible with set literal
## if string in {'left', 'right'}:
另请注意Python中的str
is a built-in function。你应该避免命名一个与它们发生冲突的变量。