xingmuxin

集合类型

集合是多个元素的无序组合,每个元素唯一,不存在相同类型,每个元素是不可变类型。用{}表示,元素间用逗号分隔。建立结合类型用{},或set函数,如果是空集合必须用set。

>>> a={\'a\',\'b\'}
>>> a
{\'a\', \'b\'}
>>> b=set("pypy123")
>>> b
{\'p\', \'2\', \'y\', \'1\', \'3\'}

集合操作符:

S|T  返回一个新集合,包括在集合S和T中的所有元素

S-T  包括在集合S但不在T中的元素

S&T 包括同时在集合S和T中的元素

S^T 包括集合S和T中的非相同元素

S<=T或S<T  返回True/False,判断S和T的子集关系

S>=T 或S>T 返回True/False,判断S和T的包含关系

增强操作符:

S |=T

S -=T

S &= T

S ^=T

集合处理方法:

S.add(x)       如果x不在S中,将x增加到S

S.discard(x)  移除S中元素x,如果x不在集合中,不报错

S.remove(x)  移除S中元素x,如果x不在集合中,产生KeyError异常

S.clear()        移除S中所有元素

S.pop()          随机返回S的一个元素,更新S,若S为空产生KeyError异常

S.copy()        返回S的一个副本

len(S)            返回集合的元素个数

x in S            在,返回True

x not in S      不在返回True

set(x)            将x变量转换为集合类型

>>> b
{\'2\', \'y\', \'1\', \'3\'}
>>> try:
       while True:
          print(b.pop(),end="")
    except:
       pass
2y13
>>> b
set()

集合类型应用场景:

包含关系比较:‘p’ in {\'p\',\'y\',123}    {‘p’, \'y\'} >= {\'p\',\'y\',123}

数据去重:将有重复元素的列表类型转换为没有重复元素的集合类型,如果需要使用列表类型,再将集合类型转换为列表类型

>>> ls=[\'p\', \'y\', \'y\', \'p\', 123]
>>> ls
[\'p\', \'y\', \'y\', \'p\', 123]
>>> s=set(ls)
>>> s
{\'y\', 123, \'p\'}
>>> It=list(s)
>>> It
[\'y\', 123, \'p\']

 

分类:

技术点:

相关文章:

  • 2021-11-18
  • 2021-11-18
  • 2021-11-18
  • 2021-12-16
  • 2021-07-18
  • 2021-11-18
  • 2021-11-18
  • 2021-11-18
猜你喜欢
  • 2021-11-18
  • 2021-11-18
  • 2021-11-18
  • 2021-11-18
  • 2021-11-18
  • 2021-11-18
  • 2021-11-28
相关资源
相似解决方案