Python学习中的笔记--集合相关

python学习网 2017-11-13 12:54:01

集合的基本操作

           一.可修改的集合set
     创建集合
        var = set()

        var = {'a','b','c','d'}

     成员检测
        var = {'a','b','c','d'}
        result = 'a' in var
        print(result)

        result = 'a' not in var
        print(result)

     集合推导式

       基本的集合推导式
        result = {'@'+i+'@' for i in var}

       带有判断条件的集合推导式
        result = {'@'+i+'@' for i in var if i != 'c'}

              多循环集合推导式
        colors = {'red','blue','pink'}
        sizes = {35,41,37,39}

        result = {c + str(s) for c in colors for s in sizes}
        print(result)

     集合函数
        1.add() 向集合中添加元素

        2.pop() 随机删除集合中的一个元素

        3.remove() 删除集合中制定的元素 删除不存在的元素 报错

        4.discard() 删除集合中制定的元素 删除不存在的元素 啥都不干

        5.copy() 复制集合

        6.difference() 计算2个集合的差集

        7.difference_update() 计算2个集合的差集(差集更新操作)

        8.update() 并集更新操作

        9.intersection() 计算2歌集合的交集

        10.intersection_update() 交集更新操作

        11超集和子集

          issuperset()检测当前集合是否是另一个集合的超集

          issubset() 检测当前集合是否是另一个集合的子集

          isdisjoint()检测2歌集合是否不存在交集 存在交集 False 不存在True

          symmetric_difference()对称差集

          symmetric_difference_update()对称更新差集

   二.不可修改本身的集合:冰冻集合(frozenset)

        冰冻集合:冰冻集合是一种特殊的集合类型,也是集合(集合是列表的话,冰冻集合就是元祖)

        集合推导式(无法得到冰冻集合,可以得到集合,列表,元祖,字典类型)

        冰冻集合可以使用集合的函数(不修改集合本身的函数都可以使用)

        集合操作 交集,并集 ,差集,对称差集等 不修改冰冻集合本身就能使用 :冰冻集合的操作结果都是冰冻集合

        冰冻集合操作
          result = var1.union(var2)

        普通集合操作(冰冻集合是参考集合)
          result = var2.union(var1)

 

 

阅读(756) 评论(0)