在python中,经常会看到 (1,) 这样的元组,这个元组代表什么意思呢?正常的元组不应该是(1, 2)这样的吗?
答:
要定义一个只有1个元素的tuple,如果我们这么定义:
tu = (1)
定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。
所以,只有1个元素的tuple定义时必须加一个逗号,来消除歧义:
tu = (1,)
Python在显示只有1个元素的tuple时,也会加一个逗号,,以免你误解成数学计算意义上的括号。