python基础之集合set

集合:set 可变数据类型,包含的数据必须是不可变数据类型、无序、不重复,表示:{}

不可变数据类型:tuple、bool、int、str --可哈希类型
可变数据类型:list、dict、set --不可哈希类型

增:set.add(obj) set.update(obj)
删:set.pop() set.remove(obj) set.clear() del set
查:for i in set:
集合间交换数据:交集:set1&set2 set1.intersection(set2) 并集:set1|set2 set1.union(set2)
反交集: set1^set2 set1.symmeterc_difference(set2) 差集:set1-set2 set1.difference(set2)
子集:set1<set2 set1.issubset(set2) 超集:set1>set2 set1.issuperset(set2)
统计:len(set)
定义:
ey:
set1 = set({1,2,3,4})
print(set1)

set1 = {1,2,3,4}
print(set1)
result:{1, 2, 3, 4}
ey:
set1 = set({1,2,3,4,[12,2]})
print(set1)
result:TypeError: unhashable type: 'list'
1,增:add
ey:
set1 = set({1,2,3,4})
set1.add('1')
print(set1)
result:{1, 2, 3, 4, '1'}
update():打散后追加
ey:
set1 = set({1,2,3,4})
set1.update('ssswe')
print(set1)
result:{1, 2, 3, 4, 's', 'w', 'e'}
2,删
pop()从左开始删
ey:
set1 = set({1,2,3,4})
set1.pop()
print(set1)
result:{2, 3, 4}
remove(obj)按元素删
ey:
set1 = set({1,2,3,4})
set1.remove(3)
print(set1)
result:{1, 2, 4}
clear()清除
ey:
set1 = set({1,2,3,4})
set1.clear()
print(set1)
result:set()
del 删除
ey:
set1 = set({1,2,3,4})
del set1
print(set1)
result:NameError: name 'set1' is not defined
4,查
ey:
set1 = set({1,2,3,4})
for i in set1:
    print(i)
result:1,2,3,4
5,统计
set1 = set({1,2,3,4})
print(len(set1))
result:4
6,交集
set1 = set({1,2,3,4})
set2 = {2,3,8,9,0}
print(set1&set2)
result:{2, 3}
set1 = set({1,2,3})
set2 = {1,2,3,5,6}
print(set2.intersection(set1))
result:{1, 2, 3}
7,并集
set1 = set({1,2,3,4})
set2 = {2,3,8,9,0}
print(set1|set2)
result:{0, 1, 2, 3, 4, 8, 9}
set1 = set({1,2,3,4})
set2 = {2,3,8,9,0}
print(set1.union(set2))
result:{0, 1, 2, 3, 4, 8, 9}
8,反交集
set1 = set({1,2,3,4})
set2 = {2,3,8,9,0}
print(set1^set2)
result:{0, 1, 4, 8, 9}
set1 = set({1,2,3,4})
set2 = {2,3,8,9,0}
print(set1.symmetric_difference(set2))
result:{0, 1, 4, 8, 9}
9,差集:--存在于set1,不存在于set2
set1 = set({1,2,3,4})
set2 = {2,3,8,9,0}
print(set1-set2)

result:{1, 4}
set1 = set({1,2,3,4})
set2 = {2,3,8,9,0}
print(set1.difference(set2))
result:{1, 4}
10,子集:set1是set2的子集
set1 = set({1,2,3})
set2 = {1,2,3,5,6}
print(set1<set2)
result:True
set1 = set({1,2,3})
set2 = {1,2,3,5,6}
print(set1.issubset(set2))
result:True
11,超集:set2是set1的超集
set1 = set({1,2,3})
set2 = {1,2,3,5,6}
print(set2>set1)
result:True
set1 = set({1,2,3})
set2 = {1,2,3,5,6}
print(set2.issuperset(set1))
result:True
posted @ 2019-08-21 17:46  joker_you  阅读(214)  评论(0编辑  收藏  举报