这里会有个重点知识
# 声明 basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'} print(basket) set_ = {1, 1, 1, 1, 2} print(set_) # 输出结果 {'orange', 'pear', 'banana', 'apple'} {1, 2}
自动去重了,每个元素只保留一个,且是无序的
再来看一个例子
set_ = {{1, }, {1, }} print(set_) set_ = {[1, ], [2, ]} print(set_) # 输出结果 set_ = {{1, }, {1, }} TypeError: unhashable type: 'set' set_ = {[1, ], [2, ]} TypeError: unhashable type: 'list'
重点:因为 set 集合只能包含不可变对象元素,而列表、集合本身都是可变对象,所以会报错
列表中的元素允许重复,集合中的元素不允许重复
列表是有序的,提供了索引操作,集合是无序的,没有索引操作