集合时无序且不重复的序列,可通过add(一个)、update(多个)来增值,通过remove(无元素会报错)或discard(无元素不会报错)来删值。
字典是无序不重复且是以键值对方式构成的序列,可通过键来取值,增值,也可通过pop删值(更多取值方法,keys(),items(),values())
#字典的增删改查
dict1={123:[1,2,3],'xiongyi':123,'xxxx':(123),'123':[123]}
print(dict1.values())
print(dict1.items())
print(dict1.keys())
dict1['xiejinyi']='baobao'
print(dict1)
dict1.pop('123')
print(dict1)
#产生10个1-20的随机数,去除里面的重复项
#输入一个元素,将此元素从不重复的集合中删除
import random
s=set()
for i in range (10):
r=random.randint(1, 20)
s.add(r)
print(s)
a=int(input('请输入一个元素:'))
#discard类似于remove,但当没有这个元素时,remove报错,discard不会
s.discard(a)
print(s)
#集合的 差集 交集 并集
# -(difference()) & |
s1={1,2,3,4,5,6}
s2={1,2,3,4,5,6,7,8}
#s=s2-s1
s2=s2.difference(s1)
#有一个dfference_update方法,同上difference,但update方法会直接把做差集的值赋给s2
print(s2)
s=s2 & s1
print(s)
s=s2 | s1
print(s)
l1=[5,1,2,9,0,3]
L2=[7,2,5,7,9]
#1.已知两个列表的不同元素
#2.已知两个列表的共同元素
s1=set(l1)
s2=set(L2)
#对称差集原理
#1
s=(s1|s2)-(s1&s2)
print(s)
#特殊符号^
#在集合中的异或符号即为对称差集
s=s1 ^ s2
print(s)
s=s1 & s2
print(s)