📅  最后修改于: 2023-12-03 14:45:58.195000             🧑  作者: Mango
Frozenset() 是 Python 中的一种集合数据类型,不同于 set() 它是不可变的。
Frozenset() 可以通过以下两种方式来创建:
当 Frozenset() 被直接创建时,可以传递一个可迭代对象作为参数。
fset = frozenset([1, 2, 3])
print(fset) # frozenset({1, 2, 3})
我们也可以通过 set() 来创建 Frozenset()。
my_set = {1, 2, 3, 4}
fset = frozenset(my_set)
print(fset) # frozenset({1, 2, 3, 4})
Frozenset() 继承了 set() 的所有方法,这些方法也同样适用于 Frozenset()。但由于 Frozenset() 是不可变的,因此不能修改或添加元素。
以下是一些常用的方法:
返回一个包含两个集合中所有元素的集合,重复元素只显示一次。
fset1 = frozenset([1, 2, 3])
fset2 = frozenset([2, 3, 4])
union_set = fset1.union(fset2)
print(union_set) # frozenset({1, 2, 3, 4})
返回两个集合中共同存在的元素的集合。
fset1 = frozenset([1, 2, 3])
fset2 = frozenset([2, 3, 4])
intersect_set = fset1.intersection(fset2)
print(intersect_set) # frozenset({2, 3})
返回一个包括在第一个集合中而不在第二个集合中的元素集合。
fset1 = frozenset([1, 2, 3])
fset2 = frozenset([2, 3, 4])
diff_set = fset1.difference(fset2)
print(diff_set) # frozenset({1})
判断两个集合是否不相交。
fset1 = frozenset([1, 2, 3])
fset2 = frozenset([4, 5, 6])
fset3 = frozenset([3, 4, 5])
print(fset1.isdisjoint(fset2)) # True
print(fset1.isdisjoint(fset3)) # False
Frozenset() 是一种不可变的集合类型,可以被当做键使用,比如在字典中作为键。Frozenset() 继承了 set() 的所有方法,但由于它是不可变的,不能修改或添加元素。