鱼C论坛

 找回密码
 立即注册
查看: 1608|回复: 6

[已解决]if ('a' or 'b' or 'c') in x1 与 if a in x1 or b in x1 or c in x1相同吗?

[复制链接]
发表于 2023-5-1 08:36:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
if ('a' or 'b' or 'c') in x1 与 if ’a' in x1 or 'b' in x1 or 'c' in x1  为啥不同呢?
最佳答案
2023-5-1 08:40:50
这两个条件语句的逻辑含义是不同的。

第一条语句:if ('a' or 'b' or 'c') in x1 是先将 'a' or 'b' or 'c' 的值计算出来,由于字符串 'a' 非空,所以整个表达式的值为 'a'。然后判断 'a' 是否在 x1 中。这条语句的结果只考虑了 'a' 是否在 x1 中,而如果 x1 中只包含 'b' 或 'c' 却不包含 'a',这条语句也会输出 True。

第二条语句:if 'a' in x1 or 'b' in x1 or 'c' in x1 是分别判断 'a'、'b' 和 'c' 是否在 x1 中,任意一个条件成立,整个表达式就为 True,才会进入 if 语句。因此,这条语句对于每个字符都做了判断,可以更加准确地判断 x1 中是否包含 'a'、'b' 或 'c'。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-1 08:40:50 | 显示全部楼层    本楼为最佳答案   
这两个条件语句的逻辑含义是不同的。

第一条语句:if ('a' or 'b' or 'c') in x1 是先将 'a' or 'b' or 'c' 的值计算出来,由于字符串 'a' 非空,所以整个表达式的值为 'a'。然后判断 'a' 是否在 x1 中。这条语句的结果只考虑了 'a' 是否在 x1 中,而如果 x1 中只包含 'b' 或 'c' 却不包含 'a',这条语句也会输出 True。

第二条语句:if 'a' in x1 or 'b' in x1 or 'c' in x1 是分别判断 'a'、'b' 和 'c' 是否在 x1 中,任意一个条件成立,整个表达式就为 True,才会进入 if 语句。因此,这条语句对于每个字符都做了判断,可以更加准确地判断 x1 中是否包含 'a'、'b' 或 'c'。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-1 08:42:08 | 显示全部楼层
第一个or是判断的a、b、c,第二个or是判断的 a in x1 b in x1 c in x1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-1 08:47:27 | 显示全部楼层
歌者文明清理员 发表于 2023-5-1 08:42
第一个or是判断的a、b、c,第二个or是判断的 a in x1 b in x1 c in x1

你的签名太6了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-1 08:48:02 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-1 08:51:00 | 显示全部楼层

悬赏会不会算进解决数?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-1 08:52:38 | 显示全部楼层
liuhongrun2022 发表于 2023-5-1 08:51
悬赏会不会算进解决数?

会的,但是不会算进计数值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-21 06:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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