集合(Set)是 Python 中的一种无序、可变的数据结构,用于存储不重复的元素。集合使用花括号{}
定义,元素之间用逗号 ,
分隔。
1. 集合的特点
-
唯一性:
集合中的元素是唯一的,即集合中不允许存在重复的元素。 -
无序性:
集合中的元素没有固定的顺序,每次访问元素的顺序可能不同。 -
可变性:
集合是可变的,即可以添加、删除和更新元素。
2. 创建集合
创建集合有三种常用的方法:字面量语法、构造器语法和推导式语法:
1. 字面量语法
- 使用花括号
{}
来定义集合,元素之间用逗号,
分隔。 - 在字面量语法中,可以使用一对空的花括号
{}
来表示空集合。
1 | # 包含多个元素的集合 |
2. 构造器语法
- 使用
set()
构造函数来创建集合,可以接受一个可迭代对象作为参数,将可迭代对象中的元素加入到集合中。 - 构造器语法通常用于从其他可迭代对象(如列表、元组等)中创建集合。
1 | another_set = set([4, 5, 6]) |
3. 推导式语法
集合推导式允许在一行代码中根据某种规则创建集合。其语法与列表推导式类似,但使用花括号{}
来表示集合。
1 | my_set = {x for x in range(10) if x % 2 == 0} |
在上述示例中,通过集合推导式创建了一个包含 0 到 9 中所有偶数的集合。
总的来说,这三种方法都可以用来创建集合,选择哪种方法取决于个人偏好以及特定的使用场景。通常情况下,字面量语法和构造器语法是更常用和更直观的方法,而推导式语法则更适用于需要根据特定规则生成集合的情况。
2. 集合的用法
添加元素:
1 | my_set.add(4) #向集合中添加单个元素 |
删除元素:
1 | if 4 in my_set: |
集合运算:
集合支持并集、交集、差集和对称差等运算
1 | set1 = {1, 2, 3} |
上面的代码中我们对集合进行运算的时候可以调用集合对象的方法,也可以直接使用对应的运算符,例如&
运算符跟intersection
方法的作用就是一样的,但是使用运算符让代码更加直观。
3. 不可哈希性
集合本身是可变的,因此集合对象本身是不可哈希的,即不能作为字典的键或者其他集合的元素。
如果您喜欢此博客或发现它对您有用,则欢迎对此发表评论。 也欢迎您共享此博客,以便更多人可以参与。 如果博客中使用的图像侵犯了您的版权,请与作者联系以将其删除。 谢谢 !