集合(set)是一个无序、不重复的序列,创建一个空集合用set(),集合用{1, 2, 'hello'}表示。

下面是一些例子:

me = {'nciaer', 36}
print(me) # 打印集合,每次显示顺序都不同
me.add('beijing') # 给集合添加一个元素,变成{'nciaer', 36, 'beijing'},如果元素已存在,则不添加
me.update([1, 2, 3]) # {'nciaer', 36, 1, 2, 3} # update方法是把列表的每个元素分别添加进去
me.update({'name': 'mickey'}) # 只会把键name添加进去,变成{'nciaer', 36, 'name'}
me.delete('nciaer') # 删除一个元素,如果不存在会报错
me.delete('beijing') # 删除一个元素,如果不存在不会报错
me.pop() # 随机删除一个元素

集合里add方法只能添加不可变的元素?比如字符串,数字和元组?因为列表和字典是可变的,导致无法添加?我测试是这样的,如:

me.add((1, 2, 3)) # 没问题,打印出{'nciaer', 36, (1, 2, 3)},元组整个添加进去了
me.add([1, 2, 3]) # 错误,提示unhashable type:list

set 集合

评论