Check if number is between given range
本问题已经有最佳答案,请猛点这里访问。
我遇到一个答案,我们可以通过下面的方法10<=n<=100来检查数字是否在给定范围内。我想知道这个语句是如何在Python中执行的。我是Python的新手,知道如何用Java编写代码。
从答案中,我了解到这个特性被称为链接比较运算符。非常感谢你的回答。
这是"该语句的执行方式"
1 2 3 4 5 6 | import dis def f(n): return 10<=n<=100 print(dis.dis(f)) |
给出
1 2 3 4 5 6 7 8 9 10 11 12 | 6 0 LOAD_CONST 1 (10) 3 LOAD_FAST 0 (n) 6 DUP_TOP 7 ROT_THREE 8 COMPARE_OP 1 (<=) 11 JUMP_IF_FALSE_OR_POP 21 14 LOAD_CONST 2 (100) 17 COMPARE_OP 1 (<=) 20 RETURN_VALUE >> 21 ROT_TWO 22 POP_TOP 23 RETURN_VALUE |
但你真的想知道吗?
链接比较运算符可能是一个很好的参考。
It's really translating into
10 < n and n < 100
在python中,这类双重条件是作为连续和执行的,因此:
1 | 10 <= n <= 100 |
等于:
1 | (10 <= n) and (n <= 100) |
它返回一个布尔值,可以是