目录
-
- 集合类型--- set, frozenset
-
- set 和frozenset 的实例提供以下操作:
-
- len(s)
- x in s
- x not in s
- isdisjoint(other):用于判断两个集合是否包含相同的元素
- issubset(other):用于判断集合的所有元素是否都包含在指定集合中
- issuperset(other):用于判断指定集合的所有元素是否都包含在原始的集合中
- union(*others):返回两个集合的并集,重复的元素只会出现一次
- intersection(*others): 用于返回两个或更多集合中都包含的元素,即交集
- difference(*others):用于返回集合的差集,即返回的集合元素包含在第一个集合中,但不包含在第二个集合(方法的参数)中
- symmetric_difference(other):返回两个集合中不重复的元素集合,即会移除两个集合中都存在的元素
- copy():拷贝一个集合
- 可用于set 而不能用于不可变的frozenset 实例的操作:
-
- update(*others):用于修改当前集合,可以添加新的元素或集合到当前集合中,如果添加的元素在集合中已存在,则该元素只会出现一次,重复的会忽略
- intersection_update(*others):用于获取两个或更多集合中都重叠的元素,即计算交集
- difference_update(*others):用于移除两个集合中都存在的元素
- symmetric_difference_update(other):移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中
- add(elem)
- remove(elem)
- discard(elem):如果元素elem 存在于集合中则将其移除
- pop():从集合中移除并返回任意一个元素。如果集合为空则会引发KeyError
- clear():用于移除集合中的所有元素
- 关系运算:交集,并集,差集,对称差集的快捷符号
集合类型— set, frozenset
- set 对象是由具有唯一性的hashable 对象所组成的无序多项集。常见的用途包括成员检测、从序列中去除重
复项以及数学中的集合类计算,例如交集、并集、差集与对称差集等等
两个类的构造器具有相同的作用方式:
- class set([iterable ])
- class frozenset([iterable ])
集合可用多种方式来创建:
• 使用花括号内以逗号分隔元素的方式: {‘jack’, ‘sjoerd’}
• 使用集合推导式: {c for c in ‘abracadabra’ if c not in ‘abc’}
• 使用类型构造器: set(), set(‘foobar’), set([‘a’, ‘b’, ‘foo’])
set 和frozenset 的实例提供以下操作:
len(s)
- 计算集合 s 元素个数
x in s
- 检测x是否为s中的成员
x not in s
检测x 是否非s 中的成员
isdisjoint(other):用于判断两个集合是否包含相同的元素
- 用于判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False
x