介绍
set(集合)是 无序、不重复 元素的序列
应用场景
防止重复添加元素时
创建
用大括号
>s={1,2,3,1}
>s
结果只有一个1,如下:
{1, 2, 3}
注意,不能使用大括号创建空set,因为大括号用于创建dict
set()空集合
注意: { } 表示 dict 类型
s = { }
print( type(s) ) # dict
s=set()
print( type(s) ) # set
set(iterable)
iterable表示可迭代,即string、list、tuple,也就是说set()函数里的参数是string、list、tuple,不能是数字
>s=set([1,2,3,1])
>s=set('hello world!')
访问元素
由于集合是无序的,所以不能通过索引访问集合的元素
遍历
通过 for...in... 语句遍历:
s = { "李雷",100,3.14,True,"李雷",3.14}
for item in s :
print(item)
添加元素
1. add()函数
add(x)
将元素 x 添加到集合 s 中,如果元素已存在,则不进行任何操作。
x可以是string、tuple
注意:
不能是list类型
例子:
把字符串添加到集合中
>s.add('吴亦凡')
把元祖添加到集合中
>s.add((1,2))
2. update()函数
s.update(x)
将元素 x 添加到集合 s 中,如果元素已存在,则不进行任何操作。
x必须是iterable,即:x 可以有多个,用逗号分开,或者可迭代的类型。如:string、tuple、dict。
然后把x中的元素拆开放入集合里
注意:
不能是数字
例子:
把1,4,6,5都放入集合中
>s.update([1,4],[6,5])
s.update("张三","李四")
下面这种写法会报错
s.update(1,2)
移除元素
1. 方法一
s.remove( x )
将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误
例子:
s.remove(4)
2. 方法二
s.discard( x )
如果元素不存在,不会发生错误
例子:
s.discard(4)
清空集合
>s.clear()
转换
set转换成字符串
如果set中的元素都是字符串,那么可以用如下方式转成字符串
s={'a','b','c'}
s2=''.join(s)