您好,欢迎来到外链网!
当前位置:外链网 » 站长资讯 » 专业问答 » 文章详细 订阅RssFeed

python集合类型有哪些

来源:互联网 浏览:120次 时间:2023-04-08

Python 集合类型有哪些

什么是集合类型

在 Python 中,集合是一种无序且不重复的数据类型。集合可以用来去除列表中的重复元素,也可以进行集合运算,如交集、并集等。Python 提供了两种集合类型:Set 和 FrozenSet。

Set

Set 是一种可变集合类型,采用哈希表实现。使用 set() 函数可以将列表或元组转化为集合。

下面是一个例子:

fruits = ['apple', 'orange', 'banana', 'apple']
unique_fruits = set(fruits)
print(unique_fruits)

输出结果为:{'orange', 'apple', 'banana'},可以看到重复的元素被自动去除了。

Set 支持的基本操作包括添加元素、删除元素、判断元素是否在集合中等。下面是一些常用的示例:

numbers = {1, 2, 3, 4}
numbers.add(5) # 添加元素
numbers.remove(3) # 删除元素
print(2 in numbers) # 判断元素是否在集合中

FrozenSet

FrozenSet 是一种不可变集合类型。相比于 Set,它没有添加元素和删除元素的方法,也不能修改已经存在的元素。但是它支持所有的集合运算,如交集、并集等。

下面是一个例子:

f_varieties = frozenset(['apple', 'orange', 'banana'])
s_varieties = frozenset(['orange', 'grapefruit'])
print(f_varieties | s_varieties)

输出结果为:frozenset({'grapefruit', 'apple', 'banana', 'orange'}),可以看到两个集合的并集被正确地计算了。

集合推导式

与列表推导式类似,Python 也支持集合推导式,可以快速生成一个集合。下面是一个例子:

numbers = {i * i for i in range(1, 5)}
print(numbers)

输出结果为:{1, 4, 9, 16},可以看到我们成功地生成了一个包含 1 到 4 的平方的集合。

总结

Python 中集合是一种十分有用的数据类型,通过使用 Set 和 FrozenSet 可以快速去除列表中的重复元素或进行集合运算。同时,集合推导式也提供了一种方便的生成集合的方式。


香港cn2 vps