• Python3-内置类型-集合类型


    Python3中的集合类型主要有两种

      set 可变集合

        可添加和删除元素,它是不可哈希的,因此set对象不能用作字典的键或另一个元素的集合

      forzenset 不可变集合

        正好与set相反,其内容创建后不能更改,它是不可改变的集合,是可哈希的

      注:

        1.set集合是一组无序的且不可重复的元素的集合,访问速度较快

        2.set的构造参数需要一个序列对象,这个序列可以是可变类型,但序列中的元素必须是不可变类型(即可哈希的)

        3.集合支持类似其他容器的len(set)、for x in set,但不支持索引、切片或其他类似序列的行为

    相关内置函数

      len(set)

        返回集合中元素的个数

    set、forzenset 集合对象常用方法

      s.isdisjoint(other_set)

        如果集合s中的元素与集合other_set中的任何一个元素都不同,即两集合不相交(交集为空),则返回True,否则返回False

      s.issubset(other_set)  

      或  s <= other_set

        如果集合s是集合other_set的子集,则返回True,否则返回False

      s < other_set

        如果集合s是集合other_set的真子集,则返回True,否则返回False

      s.supperset(other_set)  

      或  s >= other_set

        如果集合s是集合other_set的超集,则返回True,否则返回False

      s > other_set

        如果集合s是集合other_set的真超集,则返回True,否则返回False

      s.union(other_set...)  

      或  set | other | ...

        返回一个新集合,集合中会保留s集合与其他集合的并集,即所有集合中不重复的全部元素

      s.intersection(other_set...)

      或  set & other & ...

        返回一个新集合,集合中只会保留s集合与其他所有other_set的交集,即所有集合都有的元素

      s.difference_update(other_set...)

      或  set - other - ...

        返回一个新集合,集合中只会保留其他所有other_set的差集合,即别的集合都没有的元素

      s.symmetric_difference_update(other_set)

      或  set ^ other

        返回一个新集合,集合中只会保留仅存在于其中一个集合(不能两个集合都存在)中的元素

      s.copy()

        返回一个浅拷贝s的新集合

    仅set集合对象支持的常用方法

      s.add(elem)

        添加元素到elem到集合s

      s.remove(elem)

        删除集合s中的elem元素,找不到引发异常KeyError

      s.discard(elem)

        类似于remove,但找不到不会引发异常

      s.pop()

        从集合中移除并返回任意元素,如果集合为空,则引发异常KeyError

      s.clear()

        删除集合中所有的元素

      s.update(other_set...)

      或  set |= other | ...

        更新集合s,s中会保留s集合与其他集合的并集,即所有集合中不重复的全部元素

      s.intersection_update(other_set...)

      或  set &= other & ...

        更新集合s,s中只会保留s集合与其他所有other_set的交集,即所有集合都有的元素

      s.difference_update(other_set...)

      或  set -= other | ...

        更新集合s,s中只会保留其他所有other_set的差集合,即别的集合都没有的元素

      s.symmetric_difference_update(other_set)

      或  set ^= other

        更新集合s,s中只会保留仅存在于其中一个集合(不能两个集合都存在)中的元素

  • 相关阅读:
    给列表项标记添加自定义图像
    双飞翼布局与圣杯布局
    CSS3 calc()
    CSS滚动视差
    应用层层面面试题汇总
    Linux下OpenSSL 安装
    深入理解:Android 编译系统
    ios 好去处
    IBOutlet & IBAction
    ar技术序章-SDK介绍和选择
  • 原文地址:https://www.cnblogs.com/qq1207501666/p/6527747.html
Copyright © 2020-2023  润新知