Python基础入门—集合Set

集合

  • 集合是一种可变数据类型
  • 集合一种无序不重复的集,所有集合的作用主要就是去重
  • 关系测试,测试两组数据之前的交集、差集、并集等关系

集合的定义

使用set()创建

st = set('hello world')   #创建一个唯一字符的集合
st
type(st)
set

集合的操作

添加元素

  • set.add()

通过add(新元素)方法添加元素到set中,已经存在的元素不会添加。

st = set([1,'a','b'])
st.add('新中国')
{1,'a','b','新中国'}
  • set.update()

    基本用法同add();

    st.update({'aa','ss','dd'})
    st
    {1,'a','b','新中国','aa','ss','dd'}
    

    如果添加的是字典,添加的是键的内容

删除操作

  • set.remove()
    删除指定元素
a = {1,2,3,4}
a.remove(4)
a
{1,2,3}
  • set.pop()
    随机删除一个元素并且返回这个元素
a = {1,2,3,4}
b = a.pop()
b
1
  • set.clear()
    清空集合
a = {1,2,3,4}
a.clear()
a
set()

简单运算

  • 求交集
    set1 & set2 <==> set1.intersection(set2)
set1 = set([1 ,2 ,3])
set2 = set([2,4,8])

set1 & set2
{2}

set1.intersection(set2)
{2}
  • 求并集
    set1 | set2 <==> set1.union(set2)
set1 = set([1 ,2 ,3])
set2 = set([2,4,8])

set1 | set2
{1,2,3,4,8}

set1.intersection(set2)
{1,2,3,4,8}

其他相关操作

运算符 方法
s1&s2 交集 s1.intersection(s2)
s1|s2并集 s1.union(s2)
s1-s2 差集 s1.difference(s2)
s1 ^ s2 对称差 s1.symmetric_difference(s2)
s1<=s2 是否是s2 的子集 s1.issubset(s2)
s1 >= s2 是否是s2的超集 s1.issuperset(s2)
s1 |= s2 s2更新s1 s1.update(s2)
posted @ 2019-10-10 20:02  LAUGH_TALE  阅读(185)  评论(0编辑  收藏  举报