鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: 小甲鱼

[快问快答] 第011讲:短路逻辑和运算符优先级

[复制链接]
发表于 2025-9-7 13:39:01 | 显示全部楼层
零基础入门学习Python封面
《零基础入门学习Python》
(最新版)
小甲鱼 著
立即购买
@FishC 0 and 3 的结果是?
A. 0
B. 3
C. True
D. False
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-9-7 13:39:45 | 显示全部楼层
达芬奇同学 发表于 2025-09-07 13:39
@FishC 0 and 3 的结果是?
A. 0
B. 3
C. True
D. ...

@FishC 0 and 3 的结果是?


结果是 A. 0。

在 Python 中,and 操作符是逻辑与操作。它会返回第一个假值,或者如果所有值都为真,则返回最后一个真值。这里,0 是假值(因为 0 在布尔上下文中被视为 False),所以 0 and 3 直接返回 0

你可以用以下代码验证:

  1. print(0 and 3)  # 输出 0
复制代码


因此,正确答案是 A. 0。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-9-18 21:20:11 | 显示全部楼层
@FishC 1 + 2 > 3 - 4 的结果是?
A. True
B. False
C. 1
D. -1
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-9-18 21:20:49 | 显示全部楼层
jieshil 发表于 2025-09-18 21:20
@FishC 1 + 2 > 3 - 4 的结果是?
A. True
B. False ...


表达式 1 + 2 > 3 - 4 的计算过程如下:  
先计算左边:1 + 2 = 3  
再计算右边:3 - 4 = -1  
然后比较:3 > -1,结果为 True。  
因此,答案是 A. True

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-9-18 21:22:31 | 显示全部楼层
@FishC 0 or 1 and not 2 的结果是?
A. True
B. False
C. 0
D. 1
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-9-18 21:23:16 | 显示全部楼层
jieshil 发表于 2025-09-18 21:22
@FishC 0 or 1 and not 2 的结果是?
A. True
B. Fa ...


表达式 0 or 1 and not 2 在 Python 中的计算结果取决于运算符优先级。以下是逐步分析:

1. 运算符优先级: not 最高,然后是 and,最后是 or
2. 先计算 not 2:由于 2 是非零值(视为 True),not 2 返回 False。
3. 然后计算 1 and not 2:即 1 and False,由于 and 返回第一个假值,这里返回 False。
4. 最后计算 0 or False:由于 or 返回第一个真值,但 0 是假值,False 也是假值,因此返回 False。

在 Python 中验证:

  1. >>> 0 or 1 and not 2
  2. False
复制代码


因此,结果是 False,对应选项 B。

答案:B. False

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
@FishC 关于 False or 0 or 4 or 6 or 9,其值是?
A. 0
B. 4
C. 6
D. 9
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
whb杯注册了 发表于 2025-09-21 13:00
@FishC 关于 False or 0 or 4 or 6 or 9,其值是?
A ...


答案:B. 4

解释:在Python中,or 操作符会从左到右求值,并返回第一个为真的值。表达式 False or 0 or 4 or 6 or 9 中,False0 都为假,4 为真(非零整数),因此整个表达式的值为 4。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 半小时前 | 显示全部楼层
@FishC 0 and 3 的结果是?
A. 0
B. 3
C. True
D. False
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 半小时前 | 显示全部楼层
tim0018 发表于 2025-09-28 13:56
@FishC 0 and 3 的结果是?
A. 0
B. 3
C. True
D. ...


表达式 0 and 3 的结果是 A. 0

在 Python 中,逻辑运算符 and 的规则是:如果第一个操作数为假(False),则返回第一个操作数;否则返回第二个操作数。数字 0 在布尔上下文中被视为假,因此 0 and 3 直接返回 0。

选项分析:
- A. 0:正确
- B. 3:错误,因为第一个操作数为假时不会评估第二个
- C. True:错误,结果是一个数字而非布尔值
- D. False:错误,虽然 0 表示假,但运算符返回的是操作数本身

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-9-28 14:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表