and运算符在Python中用于连接条件,遵循短路求值规则:若左操作数为假则返回左操作数,否则返回右操作数;常用于条件判断、安全访问及与or、not组合使用。

在 Python 中,and 是一个逻辑运算符,用于连接两个条件或布尔表达式。只有当两边的表达式都为 True 时,整个表达式的结果才为 True;只要有一个为 False,结果就是 False。
基本语法和行为
and 的用法如下:
x and y它的执行逻辑是:
- 先判断 x 是否为真
- 如果 x 为假,直接返回 x 的值(短路求值)
- 如果 x 为真,继续判断 y,并返回 y 的值
这意味着 and 不一定返回布尔值 True 或 False,而是返回参与运算的某个操作数本身。
立即学习“Python免费学习笔记(深入)”;
常见使用场景
1. 条件判断中组合多个条件
比如判断一个数是否在某个范围内:
age = 25if age >= 18 and age print("成年人且未退休")
只有两个条件都成立,才会执行打印。
2. 和 if 语句一起使用
score = 85
if name and score > 80:
print(f"{name} 成绩优秀")
这里 name 非空字符串为真,score > 80 也为真,所以整体为真。
3. 利用短路特性做安全访问
比如避免除以零或访问 None 的属性:
a = 0b = 10
result = a != 0 and b / a > 1
print(result) # 输出 False,不会报错,因为 a != 0 为 False,右边不执行
这种写法可以防止程序崩溃。
和 or、not 的配合使用
Python 支持多个逻辑运算符组合:
x = 5y = 10
if x > 0 and y > 0 and (x + y) print("符合条件")
也可以混合使用 not:
logged_in = Truehas_permission = False
if logged_in and not has_permission:
print("已登录但无权限")
注意括号的使用可以提高可读性和控制优先级。
基本上就这些。and 的核心就是“全真才真”,并且具有短路特性,合理使用能让代码更安全简洁。











