Python对称对数据类型

时间:2014-02-10 19:39:39

标签: python

python中有一个数据类型,它采用一对(a,b)并对称地对待它吗?也就是说,(a,b)被视为与(b,a)相同。最好不要有代码通过检查a和b的位置是否互换来手动检查两对是否相等。

1 个答案:

答案 0 :(得分:5)

您正在寻找set() type

>>> pair = {'a', 'b'}
>>> pair == {'b', 'a'}
True

set没有订购。如果您需要将它们用作字典中的键,请改用不可变frozenset() typefrozenset settuplelist的所有内容{/ 1}}。

只有一个限制:就像字典键一样,为了能够将值放入set,它们需要是可清除的,这通常归结为没有可变类型。

此外,集合中的值必须都是唯一的; {'a', 'a'}缩减为{'a'},只有一个值。如果您的对需要支持重复值,则可以使用collection.Counter() objects