zoukankan      html  css  js  c++  java
  • python3之集合(set,frozenset)

    一、集合

    集合中的元素无序且不可重复
    集合是无序的,不记录元素位置或插入顺序,因此,集合不支持索引,切片或其他序列操作

    包括

    set: 可变的集合类型
    frozenset: 不可变的集合类型

    定义

    set_name = {value1, value2,...}
    set_name = set(iterable)
    
    frozenset_name = {value1, value2,...}
    frozenset_name = set(iterable)
    
    创建空集合必须使用set()

    二、set集合类型和frozenset集合类型共有的操作

    len(s)
    返回集合元素的个数
    
    x in s
    集合中包含给定元素返回 True,否则返回 False
    
    x not in s
    集合中包含给定元素返回 True,否则返回 False
    
    s.isdisjoint(other_s)
    集合与other_s没有相同的元素返回 True,否则返回False
    
    s.issubset(other_s)
    等效于
    s <= other_s
    集合是other_s的子集返回 True,否则返回 False
    
    s < other_s
    集合是other_s的真子集返回 True,否则返回 False
    
    s.issuperset(other_s)
    等效于
    s >= other_s
    集合是other_s的父集返回 True,否则返回 False
    
    s > other_s
    集合是other_s的超集返回 True,否则返回 False
    
    s.union(other_s)
    等效于
    s | other_s
    返回集合与other_s的并集,不改变原集合
    
    s.intersection(other_s)
    等效于
    s & other_s
    返回集合与other_s的交集,不改变原集合
    
    s.difference(other_s)
    等效于
    s - other_s
    返回集合与other_s元素的差集,不改变原集合
    
    s.symmetric_difference(other_s)
    等效于
    s ^ other_s
    返回两集合的并集减去交集组成的集合,不改变原集合
    
    s.copy()
    返回集合的浅拷贝后的集合

    三、set集合特有的操作

    set.update(other_s)
    等效于
    set |= other_s
    用集合与other_s的并集更新集合,原集合改变
    
    set.intersection_update(other_s)
    等效于
    set &= other_s
    用集合与other_s的交集更新集合,原集合改变
    
    set.difference_update(other_s)
    等效于
    set -= other_s
    用集合与other_s的差集更新集合,原集合改变
    
    set.symmetric_difference_update(other_s)
    等效于
    set ^= other_s
    用集合与other_s的并集减去交集组成的集合更新集合,原集合改变
    
    set.add(elem)
    向集合中添加元素elem
    
    set.remove(elem)
    从集合中删除元素elem,若elem不存在,引发 KeyError 异常
    
    set.discard(elem)
    从集合中删除元素elem,elem不存在不会引发异常
    
    set.pop()
    从集合中删除并返回任意元素
    
    set.clear()
    清空集合,集合变成空集合
  • 相关阅读:
    [实变函数]4.4 依测度收敛
    [实变函数]4.3 可测函数的构造
    [实变函数]4.2 Egrov 定理
    [实变函数]4.1 可测函数 (measurable function) 及其性质
    [实变函数]4.0 引言
    [实变函数]3.3 可测集类
    垂直滚动选择效果的实现
    unity模型任意无限切割插件
    微信小程序—智能小蜜(基于智能语义解析olami开放平台)
    AdPlayBanner:功能丰富、一键式使用的图片轮播插件
  • 原文地址:https://www.cnblogs.com/gudanaimei/p/14393770.html
Copyright © 2011-2022 走看看