0
点赞
收藏
分享

微信扫一扫

Python 教程之控制流(7)Python中的链接比较运算符

检查两个以上的条件在编程语言中很常见。假设我们要检查以下条件:

a < b < c

最常见的语法如下:

if a < b and

在 Python 中,有一种更好的方法可以使用比较运算符 Chaining来编写它。运算符的链接可以写成如下:

if

根据Python 中的关联性和优先级,Python 中的所有比较操作具有相同的优先级,低于任何算术、移位或按位操作。同样与 C 不同的是,像 a < b < c 这样的表达式具有数学中的常规解释。Python中的比较运算符列表:

">" | "<" | "==" | ">=" | "<=" | "!=" | "is" ["not"] | ["not"] "in"

比较运算符中的链接:

  1. 比较产生布尔值:True 或 False。
  2. 比较可以任意链接。例如:

x < y <= z 等价于 x < y  y <= z,

  1. 除了 y 只被评估一次。(但在这两种情况下,当 x < y 被发现为假时,根本不会评估 z)。
  2. 形式上,如果 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,除了每个表达式最多计算一次。
  3. 还,

a op1 b op2 c

它并不意味着 a 和 c 之间有任何比较,所以

a < b > c

是完全合理的。

# 用于说明链接比较运算符的 Python 代码
x = 5
print(1 < x < 10)
print(10 < x < 20 )
print(x < 10 < x*10 < 100)
print(10 > x <= 9)
print(5 == x > 4)

输出:

True
False
True
True
True

另一个例子:

# 用于说明链接比较运算符的 Python 代码

a, b, c, d, e, f = 0, 5, 12, 0, 15, 15
exp1 = a & lt
= b & lt
c & gt
d is not e is f
exp2 = a is d & gt
f is not c

print(exp1)
print(exp2)

输出:

True
False

如果你发现本文有什么问题,欢迎在评论区指正。


举报

相关推荐

0 条评论