Python中的set是一个无序不重复元素集,支持集合运算如并集、交集和差集。
Python中的集合(set)是一个无序且不重复的元素序列,它的主要功能包括判断元素是否在集合中,添加元素到集合,删除集合中的元素,以及执行常见的数学集合操作,如并集、交集、差集和对称差分等。
1、创建集合
可以使用大括号 {}
或者 set()
函数创建集合,注意:创建一个空集合必须用 set()
而不是 {}
,因为 {}
是用来创建一个空字典的。
使用大括号创建集合 s1 = {1, 2, 3} print(s1) 输出:{1, 2, 3} 使用set()函数创建集合 s2 = set([1, 2, 3]) print(s2) 输出:{1, 2, 3}
2、添加元素
可以使用 add()
方法向集合中添加元素,如果添加的元素已经存在于集合中,那么该元素不会被添加。
s = {1, 2, 3} s.add(4) print(s) 输出:{1, 2, 3, 4}
3、删除元素
可以使用 remove()
方法从集合中删除指定的元素,如果指定的元素不存在于集合中,会抛出 KeyError
异常,也可以使用 discard()
方法,如果指定的元素不存在于集合中,不会抛出异常。
s = {1, 2, 3} s.remove(2) print(s) 输出:{1, 3} s.discard(3) print(s) 输出:{1}
4、集合运算
Python中的集合支持以下几种运算:
并集:s1 | s2
或 s1.union(s2)
交集:s1 & s2
或 s1.intersection(s2)
差集:s1 s2
或 s1.difference(s2)
对称差分:s1 ^ s2
或 s1.symmetric_difference(s2)
s1 = {1, 2, 3} s2 = {2, 3, 4} print(s1 | s2) 输出:{1, 2, 3, 4} print(s1 & s2) 输出:{2, 3} print(s1 s2) 输出:{1} print(s1 ^ s2) 输出:{1, 4}
5、集合推导式
集合推导式是一种简洁的创建集合的方式,类似于列表推导式。
s = {x * x for x in range(10)} print(s) 输出:{0, 1, 4, 9, 16, 25, 36, 49, 64, 81}
相关问题与解答:
1、如何判断一个元素是否在集合中?
答:可以使用 in
关键字判断一个元素是否在集合中。
s = {1, 2, 3} print(1 in s) 输出:True print(4 in s) 输出:False
2、如何将两个列表转换为一个集合?
答:可以将两个列表合并后,使用 set()
函数将其转换为集合。
list1 = [1, 2, 3] list2 = [2, 3, 4] s = set(list1 + list2) print(s) 输出:{1, 2, 3, 4}
3、如何清空一个集合?
答:可以使用 clear()
方法清空一个集合。
s = {1, 2, 3} s.clear() print(s) 输出:set()
4、如何获取集合的长度?
答:可以使用 len()
函数获取集合的长度。
s = {1, 2, 3} print(len(s)) 输出:3
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)