在IPython 3交互式Shell中:
In [53]: set2 = {1, 2, True, "hello"}
In [54]: len(set2)
Out[54]: 3
In [55]: set2
Out[55]: {'hello', True, 2}
这是因为数字1和布尔值True在Python中被解释为相同的值,所以使用set函数时会自动去重,只保留其中一个(True)。如何保留它们两个呢?
1 + True
。它们是相同的东西,因此不要尝试将它们分开。 - JBernardo1
和True
?它们唯一的区别在于类型。据我所知,在所有其他方面,它们是可以互换的。 - TigerhawkT3set
应该只包含相同类型的元素。那么为什么需要不同类型的元素呢? - Daniel