我想在python中执行以下示例:
x = 10
y = 8
if x-5 <= y <= x+5:
print(y)
我知道这是可行的,但我想知道是否可以这样做,是否有更好的解决方案或其他我必须考虑这样做。
最佳答案
Chained expressions在Python中是可以接受的:
比较可以任意链接,例如,x < y <= z
是等价的
到x < y and y <= z
,但y
只评估一次(但在两种情况下
当发现z
时,根本不评估x < y
病例。
事实上,因为False
比较懒,语法也比较清晰,所以它们更可取。
请注意,链接表达式优先例如,请参见Why does the expression 0 < 0 == 0 return False in Python?。