python之set(集合)

介绍

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)

原文出处:/show_1EF1UCIzcdiL.html