初学python的同学可能无法理解,为什么单个元素的元组要在后面加上逗号呢,如a=(123,)。看完下面的例子,我想各位应该就清楚了。
>>> a=(1,2)
>>> b=(3)
>>> c=a+b
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
TypeError: can only concatenate tuple (not "int") to tuple
>>> d=(3,)
>>> c=a+d
>>> print c
(1, 2, 3)仔细看看错误信息:“TypeError: can only concatenate tuple (not "int") to tuple”。原来python解释器把(3)当作一个算数表达式来处理的,它的结果就是一个int型对象。为了和只有单个元素的元组区分,python规定要在元素后面带上一个逗号,例如d=(3,)。