有什么可以解释集合的奇怪行为?

时间:2016-10-23 15:29:01

标签: python python-3.5

s = {1,1,2,2,3,2,1,2,4,3,5,8}
s.add(7)
print(s)


#the output is   
{1, 2, 3, 4, 5, 7, 8}.



However , for 
s = {1,1,2,2,3,2,1,2,4,3,5,100}
s.add(7)
print(s)

#the output is  
{1, 2, 3, 4, 100, 5, 7}.

我的问题:为什么在第一种情况下,' 7'被添加到集合中以便集合按升序排序,而在第二种情况下,它被添加到集合的末尾?

1 个答案:

答案 0 :(得分:0)

集合是无序的。继续构建第一组的副本,看它是否保持数字顺序。尝试使集合更加填充,在同一会话中生成一堆。尝试做一个非常大的... Hack @it :)