>>> (()) == ()
True
>>> (())
()
答案 0 :(得分:12)
()
是一个0元组。 (foo)
会产生foo
的值。因此,(())
会产生0元组。
来自the tutorial:
构造了一个带有一个项目的元组 通过用逗号跟随一个值(它 不足以附上一个单身 括号中的值。)
答案 1 :(得分:6)
出于同样的原因,(4) == 4
:在表达式周围添加括号不会改变其含义(除非它当然会以不同的方式进行分组)。
请注意,( foo )
不是1元组。否则3 * (4 + 5)
之类的内容将会出错,因为(4 + 5)
将是包含9的1元组,并且您无法将数字添加到1元组中。
答案 2 :(得分:2)