为什么list(set('ate'))!= list(set('aet'))为True?

时间:2019-07-04 02:50:15

标签: python data-structures

set('ate')==set('aet')为True,为什么结果如下所示?

Input: list(set('ate'))
Output: ['e', 'a', 't']
Input: list(set('aet'))
Output: ['a', 't', 'e'] 

我想解释输出的产生方式。对我来说,元素的输出顺序是随机的。

我尝试过

x = set('ate')
x.pop()
# 'e'
x.pop()
# 'a'
x.pop()
# 't'

同样的问题,命令使我感到困惑。

1 个答案:

答案 0 :(得分:1)

集合是无序集合;列表是有序的。如果一个集合包含相同的元素,则该集合等于另一个集合,而与顺序无关。

但是,列表是一个有序集合。当且仅当它们包含相同顺序的相同元素时,列表才相等。