Python3 集合set操作详解

0 下载量 100 浏览量 更新于2024-08-29 收藏 141KB PDF 举报
"Python3集合set入门基础" Python3中的集合(set)是一种数据结构,它存储了一组不重复的元素,这些元素是无序的。集合的创建可以通过两种方式:使用大括号 `{}` 或调用内置的 `set()` 函数。然而,需要注意的是,空集合必须使用 `set()` 创建,而不能使用 `{}`,因为后者会创建一个空字典。 集合与字典之间存在一定的关系,虽然它们都是无序的数据结构,但字典是由键值对组成,而集合只包含单一的元素。集合的一个显著特点是其元素的唯一性,这意味着集合内的每个元素都是独一无二的,不会出现重复。此外,集合不支持索引访问,即不能像列表那样通过索引来获取特定位置的元素。 创建集合的语法如下: ```python parame = {value01, value02, ...} ``` 或者 ```python set(value) ``` 例如: ```python num1 = {1, 2, 3, 4} num2 = set(['q', 'w', 'e', 'r']) ``` 集合还提供了多种操作方法,如添加元素、删除元素、集合间运算等。添加元素可以使用 `add()` 方法: ```python s.add(x) ``` 这将x添加到集合s中,如果x已经存在于集合中,该操作不会执行任何改变。 集合间的运算包括交集、并集、差集和对称差集: - 交集:`a & b` 返回同时存在于集合a和b中的元素。 - 并集:`a | b` 返回集合a或b中任意一个集合的所有元素。 - 差集:`a - b` 返回存在于集合a但不在集合b中的元素。 - 对称差集:`a ^ b` 返回既不在a又不在b,或在a不在b,或在b不在a的元素。 例如: ```python >>> a = set('abracadabra') >>> b = set('alacazam') >>> a & b # 交集 {'a', 'c'} >>> a | b # 并集 {'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'} >>> a - b # 差集 {'r', 'd', 'b'} >>> a ^ b # 对称差集 {'r', 'd', 'b', 'm', 'z', 'l'} ``` 集合还支持集合推导式,类似于列表推导式,用于快速创建新的集合: ```python a = {x for x in 'abracadabra' if x not in 'abc'} ``` 上面的代码将创建一个只包含不在'abc'中的字符的新集合。 集合在处理数据去重、快速查找成员以及集合运算等方面非常有用,是Python编程中一个强大的工具。在实际编程中,可以根据需求灵活运用集合来优化代码逻辑和提高效率。