Python中的(1,)和(1)有什么区别

What's the difference between (1,) and (1) in Python

正如标题所说,我发现(1)(1,)是不一样的。但是它们有什么区别呢?

In[39]: (1) == (1,)
Out[39]: False

逗号使它成为一个元组。 (1) 与用分隔符包裹的 1 相同。

试试这个说服自己:

>>> type((1))
<type 'int'>
>>> type((1,))
<type 'tuple'>

以下身份检查可以让您进一步了解差异:

>>> (1) is 1
True
>>> (1,) is 1
False