集合与关系运算,交集,差集,并集

###集合
##大括号内由不同元素组成

s={"ling","yan","yan"}
>>>s
'ling'
'yan'

##集合元素是无序的

s = set("yan") #输出集合中字符串的字符
>>>s
'y'
'a'
'n'

##集合内嵌列表

s= (["ling","yan","yan"]) #输出集合当中的元素
>>>s
'ling'
'yan'

##集合中添加一个元素

s = {"1","2","3",3}    #可以添加数字与字符串,但不可重复一个元素当中的值
s.add(4)
s.add(3)
print(s)

##清空集合
s = {"1","2","3",3}
s.clear()
print(s) #返回一个空的集合set()

##删除

s = {"yan",1,"2",3}
s.pop() #无序删除第一个元素
s.pop() #无序删除第二个元素
s.remove("yan")    #指定删除,不存在就会报错
s.discard("ling") #指定删除,若字符串不存在时不会报错,后面程序继续执行
s.copy()  #复制
print(s)

##测试她心里有没有你

iloveyou = ["有情人成眷属:"]  #iloveyou容器
love={"qiao","yan","shuang","xiang","chefang"}  #集合_名单
name={"yan","qiao"}  #集合_名单
for you in love:  #循环love集合,love当中的元素,用you迭代出来
    if you in name:  #如果you迭代出来的元素当中包含于name我的名字
        iloveyou.append(you) #请把你you的元素装进iloveyou的容器里
print(iloveyou)  #看看到底爱的是谁

##求交集,把两个集合相同的元素组成一个集合
#intersection()

love={"qiao","yan","sb","2b"}
you={"qiao","yan"}
print(love.intersection(you))#输出相同元素方法一
print(love&you)#输出相同元素方法二

##求并集,把两个集合对象的元素组成一个集合
#union()

love={"qiao","yan"}
you={"520","1314"}
print(love.union(you))#组成一个集合方法一
print(love|you)#组成一个集合方法二

##差集,以左边的集合为主,输出右边集合中没有的元素
#difference()

love={"qiao","yan","sb","2b"}
you={"sb","2b"}
print(love.difference(you))#找出右边集合中没有的元素方法一
print(love-you)#找出右边集合中没有的元素方法二

##将列表转换为集合

love=["qiao","yan","sb","2b","sb","2b"]
se=set(love)
print(se)

输出结果为:
{'yan', 'sb', '2b', 'qiao'} #已经达到去重效果

###交叉补集

##交叉补集,找出两边集合中都没有的元素
s_1={"qiao","yan","ling"}
s_2={"qiao","yan","zhi"}
print(s_1.symmetric_difference(s_2))#方法一
print(s_1^s_2)#方法二

##传入多个类型的元素
#update()

s_1=["qiao","yan"]
s_1=set(s_1)
s_1.update(["ling"],"zhi")
print(s_1)  #结果是集合元素
原文地址:https://www.cnblogs.com/zhiqiao/p/8651016.html