set:是python中的集合类型,元素不能有重复,且元素类型不能是可变类型。元素是无序的。{}代表空字典而不是空集合。要创建一个空集合得用set()函数
x = {42, 'foo', (1, 2, 3), 3.14159}print(x)x = {42, 'foo', [1, 2, 3], 3.14159}print(x)
输出结果:
{42, 3.14159, 'foo', (1, 2, 3)}
Traceback (most recent call last):File "F:\RolandWork\PythonProjects\studyPython\forTest.py", line 5, in <module>x = {42, 'foo', [1, 2, 3], 3.14159}^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unhashable type: 'list'
上面结果中可以看到,集合中元素可以是多种类型,但不能是可变类型。元组可以做为集合的元素,但列表不可以。
通过set(iterable)函数来创建集合。创建后,可迭代对象中的重复值将被去除。
lst = [42, 42, 'foo', (1, 2, 3), 3.14159, 'foo']
x = set(lst)
print(x) # {3.14159, 42, (1, 2, 3), 'foo'}