python学习系列7——数据类型(集合)
集合只能存储不可变的数据类型。
(一)创建集合
(1)使用 {} 创建
代码:
1 a = {1,'c',1,(1,2,3),'c'} 2 print(a)
结果:
{1, 'c', (1, 2, 3)}
(2)set()函数创建集合
set里面可以是字符串、列表、元组、range 对象等不可变数据。
代码:
1 set1 = set("c.biancheng.net") 2 set2 = set([1,2,3,4,5]) 3 set3 = set((1,2,3,4,5)) 4 print("set1:",set1) 5 print("set2:",set2) 6 print("set3:",set3)
结果:
set1: {'a', 'g', 'b', 'c', 'n', 'h', '.', 't', 'i', 'e'}
set2: {1, 2, 3, 4, 5}
set3: {1, 2, 3, 4, 5}
(二)集合的基本操作
(1)访问集合
集合中的元素是无序的,因此无法向列表那样使用下标访问元素。访问的元素不重复。
代码:
1 a = {1,'c',1,(1,2,3),'c'} 2 for ele in a: 3 print(ele,end=' ')
结果:
1 c (1, 2, 3)
(2)删除集合
代码:
1 a = {1,'c',1,(1,2,3),'c'} 2 print(a) 3 del(a) 4 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
(3)添加元素add()
使用 add() 方法添加的元素,只能是数字、字符串、元组或者布尔类型。
代码:
1 a = {1,2,3} 2 a.add((1,2)) 3 print(a) 4 a.add([1,2]) 5 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'
(4)删除元素remove()
如果被删除元素本就不包含在集合中,则此方法会抛出 KeyError 错误。
代码:
1 a = {1,2,3} 2 a.remove(1) 3 print(a) 4 a.remove(1) 5 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
(5)交集、并集、差集运算
代码:
1 set1={1,2,3} 2 set2={3,4,5} 3 print(set1 & set2) #交集 4 print(set1 | set2) #并集 5 print(set1 - set2) #差集
结果:
{3}
{1, 2, 3, 4, 5}
{1, 2}

浙公网安备 33010602011771号