Python笔记-集合(第二期)
集合
Python 集合会将所有元素放在一对大括号 {} 中,相邻元素之 间用“,”分隔,为集合对于每种数据元素,只会保留一份,由于 Python 中的 set 集合是无序的,所以每次输出时元素的排序顺序可能都不相同。
集合的创建
Python 提供了 2 种创建 set 集合的方法,分别是使用 {} 创建和使用 set() 函数将列 表、元组等类型数据转换为集合。
- 在 Python 中,创建 set 集合可以像列表、元素和字典一样,直接将集合赋值给变量,从
而实现创建集合的目的,其语法格式如下
setname = {element1,element2,...,elementn}
- set() 函数为 Python 的内置函数,其功能是将字符串、列表、元组、range 对象等可迭
代对象转换成集合。该函数的语法格式如下
setname = set(iteration)
集合元素访问
由于集合中的元素是无序的,因此无法向列表那样使用下标访问元素。Python 中,访问集 合元素最常用的方法是使用循环结构,将集合中的数据逐一读取出来。 ```python a = {1, 'c', 1, (1, 2, 3), 'c'} for ele in a: print(ele, end=' ')
1 c (1, 2, 3)
### 删除集合元素
手动函数集合类型,也可以使用 del() 语句
```python
a = {1,'c',1,(1,2,3),'c'}
print(a)
del(a)
print(a)
{1, 'c', (1, 2, 3)}
Traceback (most recent call last):
File "C:\Users\mengma\Desktop\1.py", line 4, in <module>
print(a)
NameError: name 'a' is not defined
向集合中添加元素
需要注意的是,使用 add() 方法添加的元素,只能是数字、字符串、元组或者布尔类型(True 和 False)值,不能添加列表、字典、集合这类可变的数据,否则 Python 解释器会报 TypeError 错误。
a = {1, 2, 3}
a.add((1, 2))
print(a)
a.add([1, 2])
print(a)
{(1, 2), 1, 2, 3}
Traceback (most recent call last):
File "C:\Users\mengma\Desktop\1.py", line 4, in <module>
a.add([1,2])
TypeError: unhashable type: 'list'
集合中删除元素
删除现有 set 集合中的指定元素,可以使用 remove() 方法
a = {1,2,3}
a.remove(1)
print(a)
a.remove(1)
print(a)
{2, 3}
Traceback (most recent call last):
File "C:\Users\mengma\Desktop\1.py", line 4, in <module>
a.remove(1)
KeyError: 1