python数据类型(集合)第八节
集合只能存储不可变的数据类型。
(一)创建集合
(1)使用 {} 创建(注意:列表不可作为创建集合的元素)
代码:
a = {1,'a','你',(1,'好','s')}
print(a)
#报错
#a = {1,'a','你',(1,'好','s'),['q','r']}
结果:
{1, 'a', '你', (1, '好', 's')}
(2)set()函数创建集合
set里面可以是字符串、列表、元组、range 对象等不可变数据。
代码:
#存放字符串 set1 = set('泰戈尔') #set2 = set(1,2,3,4,5,6,7,8,9,0)报错 #存放列表 set3 = set(['早n','我','h']) #存放元组 set4 = set(('他是龙h','他是龙','他是龙')) #存放range set5 = set(range(0,5)) print(set1) print(set3) print(set4) print(set5)
结果:(集合无序)
{'泰', '尔', '戈'}
{'早n', 'h', '我'}
{'他是龙h', '他是龙'}
{0, 1, 2, 3, 4}
(二)集合的基本操作
(1)访问及删除集合
集合中的元素是无序的,因此无法向列表那样使用下标访问元素。访问的元素不重复。
代码:
a = {1,'你',2,('a','b','c'),'你','1'}
#访问集合
for b in a:
print(b,end='')
#删除集合用del()
print(a)
del(a)
print(a)
结果:
Traceback (most recent call last):
File "D:/untitled/demo.py", line 739, in <module>
print(a)
NameError: name 'a' is not defined
12你1('a', 'b', 'c'){1, 2, '你', '1', ('a', 'b', 'c')}
(2)添加元素add()
使用 add() 方法添加的元素,只能是数字、字符串、元组或者布尔类型。
代码:
a = {1,'你',2,('a','b','c'),'你','1'}
a.add((1,2))
print(a)
a.add([1,2])
print(a)
结果:
{(1, 2), 1, 2, ('a', 'b', 'c'), '1', '你'}
Traceback (most recent call last):
File "D:/untitled/demo.py", line 735, in <module>
a.add([1,2])
TypeError: unhashable type: 'list'
(3)删除元素remove()
代码:
a = {1,'你',2,('a','b','c'),'你','1'}
a.add((1,2))
print(a)
a.remove(1)
print(a)
a.remove(('a','b','c'))
print(a)
结果:
{(1, 2), 1, 2, '你', '1', ('a', 'b', 'c')}
{(1, 2), 2, '你', '1', ('a', 'b', 'c')}
{(1, 2), 2, '你', '1'}
(4)交集、并集、差集运算
代码:
a = {'你','说','啥'}
b = {'说','啥','呢'}
#交集
print(a & b)
#并集
print(a | b)
#差集
print(a - b)
结果:
{'啥', '说'}
{'呢', '说', '你', '啥'}
{'你'}

浙公网安备 33010602011771号