Python 集合(Set)的十个经典案例_python 集合 discard

liftword4个月前 (02-26)技术文章36

Python 集合(Set)是一种无序、可变的数据结构,存储不重复的元素。集合类似于数学上的集合概念,可以进行交集、并集、差集等运算。



1. 创建集合

可以使用花括号 {} 或 set() 函数创建集合。

# 创建空集合
empty_set = set()

# 创建包含元素的集合
numbers = {1, 2, 3, 4, 5}
fruits = {"apple", "banana", "orange"}

2. 添加元素

可以使用 add() 方法向集合中添加元素。

numbers = {1, 2, 3}
numbers.add(4)  # numbers = {1, 2, 3, 4}

3. 删除元素

可以使用 remove() 方法或 discard() 方法删除集合中的元素。remove() 方法在元素不存在时会引发 KeyError 异常,而 discard() 方法不会。

numbers = {1, 2, 3, 4}
numbers.remove(3)  # numbers = {1, 2, 4}
numbers.discard(5)  # numbers = {1, 2, 4} (5 不存在,不会报错)

4. 检查元素是否存在

可以使用 in 关键字检查集合中是否存在指定的元素。

numbers = {1, 2, 3}
if 3 in numbers:
    print("3 exists")

5. 集合运算

集合支持交集(&)、并集(|)、差集(-)、对称差集(^)等运算。

set1 = {1, 2, 3}
set2 = {3, 4, 5}

intersection = set1 & set2  # {3}
union = set1 | set2  # {1, 2, 3, 4, 5}
difference = set1 - set2  # {1, 2}
symmetric_difference = set1 ^ set2  # {1, 2, 4, 5}

6. 集合大小

可以使用 len() 函数获取集合的大小(元素个数)。

numbers = {1, 2, 3, 4}
size = len(numbers) # 4



7. 集合遍历

可以使用 for 循环遍历集合中的元素。

fruits = {"apple", "banana", "orange"}
for fruit in fruits:
print(fruit)

8. 集合推导式

可以使用集合推导式创建新的集合。

numbers = [1, 2, 3, 4, 5]
squares = {x**2 for x in numbers} # {1, 4, 9, 16, 25}


9. 去除列表中的重复元素

可以使用集合的特性去除列表中的重复元素。

numbers = [1, 2, 2, 3, 4, 4, 5]
unique_numbers = list(set(numbers))  # [1, 2, 3, 4, 5]

10. 判断两个列表是否包含相同的元素

可以使用集合的特性判断两个列表是否包含相同的元素(忽略顺序和重复元素)。

list1 = [1, 2, 3]
list2 = [3, 1, 2]
if set(list1) == set(list2):
    print("Lists contain the same elements")

总结:

以上 10 个案例涵盖了 Python 集合的基本操作和常见应用场景。集合的无序性和不重复性使其非常适合处理需要去重或进行集合运算的数据。

相关文章

三分钟掌握Python 中最常用的 10 种 Set 方法

Python 中的集合至关重要,也是 Python 中最常用的内置数据类型之一。集合具有一些主要属性。集合中的元素必须是唯一的。套装中不允许有重复项。它们是无序的设置项目不可更改,但您可以删除和添加新...

神奇的 Python set():如何让重复元素无处可藏

前言如果你还没认真研究过 Python 中的集合(set)类型,那你可真是错失了一项神器!集合不仅能让你的代码变得更高效,还能避免一堆重复数据让你头疼。每当你用 Python 编程时,数据就像是无序的...

Python基础篇(三)dict和set类型_python dicts

dict一、dict的定义dict即字典,相当于golang中的map类型,key-value型.具有极快的查找速度.由于dict中key的值是唯一的,因此如果多次赋值,最终结果为最后一次的赋值.二、...

Python里的set和dict,如何选择用哪一个?

set和dict的共同特点就是无序。set存储的元素是唯一的,如果重复就会自动去除。˃˃˃ aset={1,2,3,3}˃˃˃ print(aset){1, 2, 3}dict的key必须是唯一的,但...

容易忽略的数据类型:集合(set)_集合set方法

python中数据类型定义明确: 1、字符串 2、布尔类型 3、整数 4、浮点数 5、数字 6、列表 7、元组 8、字典 9、日期这些是我们经常用到的,有一个数据类型:集合,一个很有用的类型,同时也最...

Poerty - 更好的Python依赖管理库

还在使用 pip 和 setuptools 来进行Python的依赖管理吗?那你就已经落伍了。来看看 Poetry吧,这个依赖管理库为Python带来了全新的体验。简介Poetry,是 python-...