You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中Set(HashSet)工作原理及布尔值比较异常问题解析

问题原因解析
  • 先看(True) == True:这里的(True)不是元组,括号仅用于提升优先级,本质就是单个布尔值True,所以等价于True == True,结果自然是True。
  • 再看(True, True) == True, True:Python中逗号的优先级比==低,这个表达式会被自动解析为((True, True) == True), True:
    1. 先计算(True, True) == True:元组和单个布尔值的类型、内容都不匹配,结果为False;
    2. 再将这个结果与后面的True用逗号拼接,形成新元组,最终得到(False, True)。
  • 如果要比较两个元组是否相等,需要把两边都写成完整元组形式:(True, True) == (True, True),此时结果就是True。

内容的提问来源于stack exchange,提问作者oneku

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 17:30:13