Python 中,and 和 or 运算符的运算规则

一、and 运算符

如果第一个操作数为‌假值‌(falsy),则返回该操作数,不再计算第二个操作数。

如果第一个操作数为‌真值‌(truthy),则返回第二个操作数。

python 复制代码
print(0 and 1)       # 输出: 0
print(False and 1)   # 输出: False
print(-1 and 1)      # 输出: 1

二、or 运算符

如果第一个操作数为‌真值‌(truthy),则返回该操作数,不再计算第二个操作数。

如果第一个操作数为‌假值‌(falsy),则返回第二个操作数。

python 复制代码
print(1 or 0)        # 输出: 1
print(True or 0)     # 输出: True
print(-1 or 0)       # 输出: -1

三、if中的and运算符 返回结果

题目:if(6<9 and 10) 的条件判断结果为 True

解析:

  1. (6<9 and 10)也就是and 运算符会返回 10,虽然 10 在布尔上下文中被视为真值,但 and 运算符本身返回的是实际的值 10 ,而不是转换为布尔值 True
  2. 只是if(6<9 and 10) 的条件判断结果为 True条件为真,返回执行相应的代码块

四、总结

这种行为称为"短路求值"(short-circuit evaluation),即一旦结果可以确定,就不会再计算后续表达式。

相关推荐
瑶光守护者2 分钟前
【学习笔记】Ku终端本振同源频偏分析与上行中频补偿计算报告
笔记·学习
Westward-sun.3 分钟前
uv入门笔记
笔记·uv
thisbrand4 分钟前
李辉《曾国藩日记》笔记:拖延死和急进死!
笔记·曾国藩
wen_zhufeng12 分钟前
python-dotenv 使用文档
数据库·python·oracle
Str_Null25 分钟前
杀戮尖塔通过修改记录文件和备份文件进行修改血量和金币
python
钝挫力PROGRAMER27 分钟前
复杂PDF转Markdown实战:从Marker到多模态的处理全记录
python·pdf
Hello_Embed29 分钟前
libmodbus 移植到 STM32H5
笔记·stm32·单片机·嵌入式硬件·嵌入式·ai编程
TechWayfarer34 分钟前
账号安全实战:基于IP归属地基线的三原则异地登录风控模型
服务器·网络·python·安全·网络安全
Biocloudy42 分钟前
循环肿瘤细胞的分离和分型技术
人工智能·经验分享·笔记·其他
dhashdoia1 小时前
2026年GPT-5.5与GPT-Image-2深度解析:国内部署指南
人工智能·python·gpt·ai作画·gpt国内部署