python数据类型之集合
一:☆集合类型set()
作用:
关系运算,去重
定义方式:
#定义集合:{}内用逗号分割每个元素都必须是不可变类型,元素不能重复,无序
# s={1,'a',[1,2]} #TypeError: unhashable type: 'list'
# s={1,2,3,1} #s=set({1,2,3,1})
# print(s,type(s))
二:集合优先掌握的操作:
1、长度len
# s={1,2,3,1} #s=set({1,2,3,1})
# print(len(s))
2、成员运算in和not in
# names={'egon','alex'}
# print('egon' in names)
3、定义集合
pythons={'egrep','axx','ysb','wxx'}
linuxs={'egrep','haoyuan','yuanyi','smallboy','smallgirl'}
4、&交集:同时在两个集合里面的人
pythons={'egrep','axx','ysb','wxx'}
linuxs={'egrep','haoyuan','yuanyi','smallboy','smallgirl'}
# print(pythons & linuxs)
# print(pythons.intersection(linuxs))
5、| 合集 并集:两个集合所有的人
# print(pythons | linuxs)
# print(pythons.union(linuxs))
6、^对称差集:没有同时在两个集合里面的人
# print(pythons ^ linuxs)
# print(pythons.symmetric_difference(linuxs))
7、 -差集:只有在Linux集合里面的人
# print(linuxs-pythons)
8、 -差集:只有在python集合里面的人
# print(pythons ^ linuxs)
# print(pythons.symmetric_difference(linuxs))
9、 父集:>,>=,子集:<,<=
# s1={1,2,3}
# s2={1,2,}
# print(s1 >= s2)
# print(s1.issuperset(s2))
# print(s2.issubset(s1))
# linuxs={'egrep','haoyuan','yuanyi','smallboy','smallgirl'}
# for student in linuxs:
# print(student)
三:其他需要掌握的方法
# s1={1,2,3}
# s2={1,2,}
# print(s1-s2)
# print(s1.difference(s2))
# s1.difference_update(s2) #s1=s1.difference(s2)
# print(s1)
# s2={1,2,3,4,5,'a'}
# print(s2.pop())
# s2.add('b')
# print(s2)
# s2.discard('b')
# s2.remove('b') #删除的元素不存在则报错
# print(s2)
# s1={1,2,3,4,5,'a'}
# s2={'b','c',}
# print(s1.isdisjoint(s2)) #两个集合没有共同部分时,返回值为True
# s2={1,2,3,4,5,'a'}
# s2.update({6,7,8})
# print(s2)
# l=['a','b',1,'a','a']
# print(list(set(l)))
# print(set('hello'))
# print(set({'a':1,'b':2,'c':3}))
name='egrep'

浙公网安备 33010602011771号