【Python编程基础】控制流之链式比较运算符
现实生活中会出现一些情况,当我们需要做出一些决定时,我们会根据这些决定来决定下一步应该做什么。类似的情况也出现在编程中,我们需要做出一些决定,并根据这些决定我们将执行下一个代码块。
本文章为系列文章,关于【Python编程基础】控制流的共七篇文章。初学者可以尝试这些测试代码,在 Python 编译环境中动手操作以加深印象。
🌟【Python编程基础】控制流之 if else 语句
🌟【Python编程基础】控制流之链式比较运算符
🌟【Python编程基础】控制流之 For 循环
🌟【Python编程基础】控制流之 While 循环
🌟【Python编程基础】控制流之 break 语句
🌟【Python编程基础】控制流之 pass 语句
🌟【Python编程基础】控制流之 Python 中的循环技术
@TOC
检查两个以上的条件在编程语言中很常见。假设我们要检查以下条件:
a < b < c
最常见的语法如下:
if a < b and b < c :
{...}
在 Python 中,有一种更好的方法可以使用比较运算符 Chaining来编写它。运算符的链接可以写成如下:
if a < b < c :
{.....}
根据Python 中的结合性和优先级,Python中的所有比较操作都具有相同的优先级,低于任何算术、移位或按位运算的优先级。同样与 C 不同的是,像 a < b < c 这样的表达式具有数学中的常规解释。
Python 中的比较运算符列表:
">" | "<" | "==" | ">=" | "<=" | "!=" | "is" ["not"] | ["not"] "in"
链接比较运算符:
1.比较产生布尔值:True 或 False。
2.比较可以任意链接。例如
x < y <= z is equivalent to x < y and y <= z,
除了 y 只计算一次。
(但在这两种情况下,当发现 x < y 为假时,根本不计算 z)。
3.形式上,如果 a, b, c, …, y, z 是表达式而 op1, op2, …, opN 是比较运算符,那么 a op1 b op2 c … y opN z 等价于 a op1 b 和 b op2 c and … y opN z,除了每个表达式最多计算一次。
4.并且
a op1 b op2 c
并不意味着 a 和 c 之间的任何类型的比较,所以
a < b > c
是完全合法的。
# 用于说明 chaining 比较运算符的 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
另一个例子:
# 用于说明 chaining 比较运算符的 Python 代码
a, b, c, d, e, f = 0, 5, 12, 0, 15, 15
exp1 = a <= b < c > d is not e is f
exp2 = a is d > f is not c
print(exp1)
print(exp2)
输出:
True
False
本文参考:Python 3 文档
我已经写了很长一段时间的技术博客,这是我的一篇基础教程。希望你们会喜欢!
Java、Python、算法知识体系 | PPT、简历模板 | 游戏源码 | IT行业趣味资讯 | 装机必备软件
可关注公众号【海拥】回复【资料】或者【代码】获取
💌 欢迎大家在评论区提出意见和建议!💌
文章来源: haiyong.site,作者:海拥,版权归原作者所有,如需转载,请联系作者。
- 点赞
- 收藏
- 关注作者
评论(0)