python--集合

集合,是python中的一种数据类型,天生去重。特点:不重复、无序

 

集合的定义:

        list = [2,3,1,2,3,4]
        s_list = set(list)#这样就定义了一个集合
        set1 = set([1,3,4,5,6])#这种方式和上面的都是把list转换成一个集合
        set2={'hehe','hehe1','hehe3'}#这种方式是直接定义一个集合
    

集合的操作:

list=list(range(11))
print(list)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] setlist = set(list) #set将list元素变成集合 print(setlist)
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

tuple1 = (1,2,3) 将元组变成集合
tuple1=set(tuple1)
print(tuple1)
{1, 2, 3}
a='woaini' #将字符串变成集合
a=set(a)
print(a)

{'i', 'a', 'o', 'w', 'n'}

key0={'key1':'abc','key2':123} #将字典变成集合,得到key的总集
print(set(key0))
{'key2', 'key1'}

 

list1 = {1, 2, 3, 4, 5, 6, 9}
list2 = {2, 3, 4, 6, 1}
list3 = {1, 2, 3}
print(list1.intersection(list2)) # 取交集,也就是取list1和list2中都有的
print(list1 & list2)# 取交集
print(list1.union(list2)) # 取并集,也就是把list1和list2合并了,然后去除重复的
print(list1 | list2)# 取并集
print(list1.difference(list2)) #取差集 在list中存在,在list2中没有的
print(list1 - list2)
print(list3.issubset(list1))#判断list3是不是list1的子集
print(list1.issuperset(list3))#判断list1是不是list3的父集
print(list1.isdisjoint(list3))#判断list1和list3是否有交集
print(list1.symmetric_difference(list2))#对称差集,输出两个列表中都没有的值,也就是把两个集合中相同的去掉
print(list1 ^ list2)
list1.add(888)#添加元素
list1.update([777,666,666])
list1.remove(777)#删除元素,如果元素不存在会报错
list1.pop()#删除一个随机的元素,并返回删除的元素
list1.discard('dddd')#如果删除的元素存在,删除,不存在不做处理

  

 

 

posted @ 2018-09-11 13:38  花er壹樣的女人  阅读(160)  评论(0编辑  收藏  举报