【发布时间】:2015-08-31 07:51:06
【问题描述】:
在 IPython 3 交互式外壳中:
In [53]: set2 = {1, 2, True, "hello"}
In [54]: len(set2)
Out[54]: 3
In [55]: set2
Out[55]: {'hello', True, 2}
这是因为 1 和 True 得到相同的交互作用,所以假设 set 消除了重复项,那么只有其中一个 (True) 可以保留? 我们如何才能两者兼得?
【问题讨论】:
-
不要使用集合。试试
1 + True。它们是同一个东西,所以不要试图将它们分开 -
为什么需要同时保留
1和True?唯一的区别是类型。据我所知,在所有其他方面,它们都是可以互换的。 -
否则您可以将数字保留为字符串格式并在需要时进行类型转换。
-
set应该只包含相同类型的元素。那么为什么需要不同的类型呢?