集合的內建方法的使用
-
set内置的使用方法
- set是无序排列,且不重复可变的--->生成一种可变的集合
- frozenset是冻结的集合,它是不可变的---->生成一个不可变的集合
操作符号 含义 函数表达式 意义 - 差集->set1-set2/set1相对set2没有的部分 set.add(obj) 在集合s中添加对象obj、适用于可变集合 & 交集 set.update(set1) 把set1传入的元素拆分,作为个体传入到集合中、适用于可变集合 | 合集、并集 set.remove(obj) 删除集合中的obj对象 ^ 两者不同时存在的部分 set.copy() 浅复制,返回一个新的集合、适用于不可变集合 != 不等于 set.pop() 删除集合set中任意一个对象、适用于可变类型 == 等于 set.clear() 删除集合set中所有的对象、适用于可变类型 in 是成员关系 set.discard(obj) 如果obj是集合set中的对象,则删除它、适用于可变类型 not in 不是成员关系 len(set) 集合set中元素的个数 # set frozenset # 生成可变集合和不可变集合 In [155]: set("booby") Out[155]: {'b', 'o', 'y'} In [156]: frozenset("booby") Out[156]: frozenset({'b', 'o', 'y'}) # - & | ^ # 差集-->前者相对于后者没有的部分 In [164]: set2 Out[164]: {'a', 'b', 'k', 'o', 'p'} In [165]: set1 Out[165]: {'b', 'h', 'k', 'o', 'p', 's'} In [166]: set1 - set2 Out[166]: {'h', 's'} In [167]: set2 - set1 Out[167]: {'a'} In [168]: set1 & set2 Out[168]: {'b', 'k', 'o', 'p'} In [169]: set1 | set2 Out[169]: {'a', 'b', 'h', 'k', 'o', 'p', 's'} In [170]: set1 ^ set2 Out[170]: {'a', 'h', 's'} # 可变集合中的操作符号 # set.add(obj) # 把对象obj添加到集合set中 In [172]: set1.add('a') In [173]: set1 Out[173]: {'a', 'b', 'h', 'k', 'o', 'p', 's'} # set.update(set1) # 把另一个集合中set1的元素拆分作为个体传入到集合set中;和|是一样的 In [179]: set1 Out[179]: {'b', 'h', 'k', 'o', 'p', 's'} In [180]: set2 Out[180]: {'a', 'b', 'k', 'o', 'p'} In [181]: set1.update(set2) In [182]: set1 Out[182]: {'a', 'b', 'h', 'k', 'o', 'p', 's'} # set.remove(obj) # 删除一个对象 In [183]: set1.remove('a') In [184]: set1 Out[184]: {'b', 'h', 'k', 'o', 'p', 's'} # set.pop() # 任意删除一个对象,默认是删除第一个 In [184]: set1 Out[184]: {'b', 'h', 'k', 'o', 'p', 's'} In [185]: set1.pop() Out[185]: 'b' # set.clear() # 清空这个集合中的所有元素 In [188]: set1 Out[188]: {'k', 'o', 'p', 's'} In [189]: len(set1) Out[189]: 4 In [190]: set1.clear() In [191]: set1 Out[191]: set()
网友评论