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()
    清空集合,集合变成空集合
  • 相关阅读:
    linux的usr目录的全称是什么
    python多线程与多进程及其区别
    redis禁用危险命令
    测试文档
    mysql5.7.23windows安装
    Nginx如何处理手机端和PC端跳转不同页面
    nginx if多条件判断
    centos7单用户模式修改密码
    Django其四
    Django简单搭建编辑页面
  • 原文地址:https://www.cnblogs.com/gudanaimei/p/14393770.html
Copyright © 2011-2022 走看看