Python 基础教程

Python 高级教程

Python 相关应用

Python 笔记

Python FAQ

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/python-builtin-functions-frozenset.html

python 用于将可迭代对象转换为集合类型的内置函数 frozenset 详解

Python 内置函数 Python 内置函数


frozenset 是 Python 内置函数之一,用于将可迭代对象转换为不可变的集合类型(frozenset)。与普通的集合不同,不可变集合一旦创建就不能再被修改,也就是说,不能添加、删除或修改其中的元素。

函数语法

frozenset([iterable])

参数:

  • iterable (可选):一个可迭代对象,可以是列表、元组、集合等。

示例代码

现在让我们通过示例代码来更详细地了解 frozenset 函数的使用:

示例 1:使用列表创建不可变集合

numbers = [1, 2, 3, 4, 4, 5, 5]
frozen_numbers = frozenset(numbers)
print(frozen_numbers)

运行结果:

frozenset({1, 2, 3, 4, 5})

示例 2:使用字符串创建不可变集合

text = "hello world"
frozen_text = frozenset(text)
print(frozen_text)

运行结果:

frozenset({'o', 'r', 'l', 'd', 'h', ' ', 'e', 'w'})

示例 3:使用元组创建不可变集合

coordinates = (3, 5)
frozen_coordinates = frozenset(coordinates)
print(frozen_coordinates)

运行结果:

frozenset({3, 5})

示例 4:使用集合创建不可变集合(去除重复项)

colors = {"red", "green", "blue", "red", "green"}
frozen_colors = frozenset(colors)
print(frozen_colors)

运行结果:

frozenset({'green', 'blue', 'red'})

示例 5:尝试修改不可变集合(会引发异常)

frozen_set = frozenset([1, 2, 3])
try:
    frozen_set.add(4)
except AttributeError as e:
    print(f"Error: {e}")

运行结果:

Error: 'frozenset' object has no attribute 'add'

总结

frozenset 函数用于将可迭代对象转换为不可变的集合类型。它的主要特点是一旦创建就不能再修改,因此适合在需要不可变性的情况下使用,例如作为字典的键值或其他需要哈希性质的场景。注意,由于不可变性,不可变集合没有添加、删除元素的方法,所以在创建后不能再对其进行修改。

list()是Python中的一个内置函数,用于将可迭代对象(如列表、元组、字符串等)转换为一个新的列表对象。函数语法list(iterab ...
filter是Python内置函数之一,用于从一个可迭代对象中过滤出满足指定条件的元素,并返回一个由满足条件的元素组成的迭代器(iterat ...
10中引入了一个新的内置函数aiter(),它用于获取可迭代对象的异步迭代器对象。run(main())运行结果:012使用sentinel ...
函数语法bytes([source[,encoding[,errors]]])参数:source(可选):要转换为字节序列的对象。它可以将整 ...
函数语法int(x,base=10)参数:x:要转换为整型的值,可以是一个字符串、整数或浮点数。75result3=int(float_nu ...