您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为什么在Python中“ 0,0 ==(0,0)”等于“(0,False)”?

为什么在Python中“ 0,0 ==(0,0)”等于“(0,False)”?

前两个表达式都解析为元组

由于逗号分隔符相对于相等运算符具有较高的优先级,因此将表达式进行拆分:Python看到一个元组包含两个表达式,其中一个恰好是一个相等测试,而不是两个元组间的相等测试。

但是在第二组语句中,a = 0, 0 不能元组元组是值的集合,与相等性测试不同,元组在Python中没有值。赋值不是表达式,而是语句。它没有可包含在元组或任何其他周围表达式中的值。如果您尝试执行类似(a = 0), 0的操作以强制将其解释为元组,则会出现语法错误。这样,将元组分配给变量(可以通过编写使其更明确)a = (0, 0)作为对的唯一有效解释a = 0, 0

因此,即使没有对的括号a,它和都b被分配了值(0,0),因此a == b也是如此True

python 2022/1/1 18:35:58 有236人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶