day07(集合的内置方法)

集合类型内置方法

作用

存储多个值

定义方式

{}内以逗号隔开多个元素,这个元素必须是不可变类型(不是任意类型)

s1 = {1,1,2,3,'a'}
s2 = set() # 定义空集合

方法

pythoner = {'demon','wangdapao','wangwu','zhaoliu','zhangsan','wangba'}
linuxer = {'kaka','kaka','wangba','wangdapao'}
javaer = {'kaka','wangba','wangdapao'}

# 说明中提到的A集合都是写在运算符前面的集合,B是写在运算符后面的集合

#必须掌握
# 去重, 去重的同事会打乱列表元素原有的顺序

l1 = [1,2,1,2,3,5,100,0,-1000]
print(set(l1))
print(list(l1))
print(list(set(l1)))
print("- "*50+"\n")

#  长度
print(len(l1))

#   成员运算

# |并集 将两个列表中元素合并起来并去重
print(pythoner | linuxer)
print(pythoner.union((linuxer)))

# &交集 返回两个列表里面相同的元素
print(pythoner & linuxer)
print(pythoner.intersection(linuxer))

## -差集 找到B集合在A集合中没有的元素
print(pythoner - linuxer)
print(pythoner.difference(linuxer))

# ^对称差集 将两个列表中不同的元素做并集
print(pythoner ^ linuxer)
print(pythoner.symmetric_difference(linuxer))

# == 判断两个集合中元素是否相同,相同则返回True
print(pythoner == linuxer)

# 父集 >、>=  判断A集合是否包含B集合
print(linuxer>=javaer)

# 子集 <、<= 判断B集合是否包含A集合
print(linuxer<=javaer)

# 需要掌握

# add 在集合中添加指定元素
s = {1,2,'a'}
s.add(3)
print(s)

# remove 删除集合中的指定元素
s = {1, 2, 'a'}
s.remove(1)
print(s)

# difference_update 移除两个集合中都存在的元素
s = {1, 2, 'a',3}
s1 = {'a'}
print(s.difference(s1))

# discard 移除指定的集合元素
s = {1, 2, 'a',3}
s.discard(3)
print(s)
# isdisjoint 如果这两个集合的交集为空,则返回True
print(pythoner.isdisjoint(linuxer))

存储一个值or多个值

多个值

有序or无序

无序

可变or不可变

可变

猜你喜欢

转载自www.cnblogs.com/wsxiaoyao/p/10920064.html