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),即一旦结果可以确定,就不会再计算后续表达式。

相关推荐
kobe_OKOK_6 小时前
__getattr__和__getattribute__如何用
python
全栈弄潮儿7 小时前
Python实战第2期: 变量与数据类型
后端·python·agent
长沙三为智能科技7 小时前
家政小程序门店运营模块设计:会员、下单、派单、结算四段链路的落地拆解
python·小程序·内容运营
Cc.Y7 小时前
Java零基础入门:可变字符串与包装类:StringBuilder、StringBuffer 与 通讯录管理系统实战
java·开发语言·python
启观川7 小时前
数据结构与算法 -第 3 章 常用算法-动态规划
数据结构·笔记·python·算法
码爸7 小时前
排序算法介绍
python·算法·排序算法
笔墨登场说说8 小时前
flink bin/start-cluster.sh 帮我做成开机启动
开发语言·python
一木 之林8 小时前
Dify学习笔记 01 · 平台入门与实战:部署、五类应用、RAG与MCP(第1-16集)
人工智能·笔记·学习·计算机视觉
weixin_448119948 小时前
Datawhale Easy Data × AI:构建知识与记忆驱动的 Agent笔记8
人工智能·笔记·react.js
MoRanzhi12039 小时前
第 3 篇 · 数据清洗与特征工程:从问题判定到特征构建
python·pandas·数据清洗·特征工程·缺失值处理·异常值检测·特征编码