if x == y != z:
print (x + y)
Run Code Online (Sandbox Code Playgroud)
这是if x == y和y!= z的缩写吗?它适用于我的代码,但我不确定当多个条件不是全部==或!=时,如何解释多个条件,或者以上面的后一种形式写出来.
是的,如文件中所述:
(......)
比较可以任意链接,例如,
x < y <= z等同于x < y and y <= z,除了y仅评估一次(但在两种情况下z都没有被评估,当x < y发现是假的时).
所以,你可以链接任何类型的比较:<,>,==,>=,<=,<>,!=,is [not],和[not] in.
文档进一步使其更正式:
形式上,如果a,b,c,...,y,z是表达式而op1,op2,...,opN是比较运算符,则
a op1 b op2 c ... y opN z等效于a op1 b and b op2 c and ... y opN z,除了每个表达式最多被计算一次.
例如:
'a' in 'ab' in 'zabc'
Run Code Online (Sandbox Code Playgroud)
相当于:
'a' in 'ab' and 'ab' in 'zabc'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
113 次 |
| 最近记录: |