当前位置:实例文章 » Python实例» [文章]Python 集合的实战应用:基本操作与练习

Python 集合的实战应用:基本操作与练习

发布人:shili8 发布时间:2023-05-24 12:12 阅读次数:103

Python 集合是一种无序、可变的数据类型,它可以存储不同类型的元素,并且每个元素只能出现一次。集合的实现方式是通过哈希表来实现的,因此集合的查找、插入、删除等操作都非常高效。

在实际应用中,Python 集合可以用来解决很多问题,比如去重、交集、并集、差集等。下面我们来看一些集合的基本操作和练习。

1. 创建集合

创建集合的方式有两种,一种是使用花括号 {},另一种是使用 set() 函数。例如:

# 使用花括号创建集合
s1 = {1 2 3 4 5}
print(s1)  # {1 2 3 4 5}

# 使用 set() 函数创建集合
s2 = set([1 2 3 4 5])
print(s2)  # {1 2 3 4 5}


2. 添加元素

可以使用 add() 方法向集合中添加元素,如果添加的元素已经存在于集合中,则不会重复添加。例如:

s = {1 2 3}
s.add(4)
print(s)  # {1 2 3 4}

s.add(3)
print(s)  # {1 2 3 4}


3. 删除元素

可以使用 remove() 或 discard() 方法从集合中删除元素,如果删除的元素不存在于集合中,则会抛出 KeyError 异常(remove() 方法)或不做任何操作(discard() 方法)。例如:

s = {1 2 3 4}
s.remove(3)
print(s)  # {1 2 4}

s.discard(5)
print(s)  # {1 2 4}


4. 集合运算

Python 集合支持多种运算,包括交集、并集、差集、对称差集等。例如:

s1 = {1 2 3 4}
s2 = {3 4 5 6}

# 交集
print(s1 & s2)  # {3 4}

# 并集
print(s1 | s2)  # {1 2 3 4 5 6}

# 差集
print(s1 - s2)  # {1 2}
print(s2 - s1)  # {5 6}

# 对称差集
print(s1 ^ s2)  # {1 2 5 6}


5. 练习

下面是一些使用 Python 集合解决实际问题的练习。

5.1 去重

给定一个列表,去除其中重复的元素。例如:

lst = [1 2 3 2 4 3 5]
s = set(lst)
lst = list(s)
print(lst)  # [1 2 3 4 5]


5.2 交集

给定两个列表,找出它们的交集。例如:

lst1 = [1 2 3 4]
lst2 = [3 4 5 6]
s1 = set(lst1)
s2 = set(lst2)
s = s1 & s2
lst = list(s)
print(lst)  # [3 4]


5.3 并集

给定两个列表,找出它们的并集。例如:

lst1 = [1 2 3 4]
lst2 = [3 4 5 6]
s1 = set(lst1)
s2 = set(lst2)
s = s1 | s2
lst = list(s)
print(lst)  # [1 2 3 4 5 6]


5.4 差集

给定两个列表,找出它们的差集。例如:

lst1 = [1 2 3 4]
lst2 = [3 4 5 6]
s1 = set(lst1)
s2 = set(lst2)
s = s1 - s2
lst = list(s)
print(lst)  # [1 2]


5.5 对称差集

给定两个列表,找出它们的对称差集。例如:

lst1 = [1 2 3 4]
lst2 = [3 4 5 6]
s1 = set(lst1)
s2 = set(lst2)
s = s1 ^ s2
lst = list(s)
print(lst)  # [1 2 5 6]


以上就是 Python 集合的基本操作和练习,希望对大家有所帮助。

相关标签:
其他信息

其他资源

Top