python之集合学习

*******************集合{set}*******************
1、集合set 可变
    特点:是由不同元素组成
            是无序的
            集合中元素必须是不可变类型例如(字符串/元祖/数字)
    集合:适合处理关系运算        
    s={1,1,3}集合的格式:大括号 + 逗号 分割
    或者 s=set(1,2,3)
    - add()
        功能是添加集合元素
        s={1,1,3}
        s.add('4')
    - clear()
        清空集合
        s.clear()
    - copy()
        拷贝多一份
        v=s.copy()
    - pop()
        删除功能,随机删除
        s.pop()
    - remove()
        也是删除功能,不过可以指定,元素不存在时,会报错
        s.remove('1')        指定删除的是1
    - discard()
        还是删除功能,也可以指定,元素不存在时,不会报错
    - intersection()
        功能是求两个集合里面的交集部分
        py=['lk','xm','br']
        li=['lk','tw','br']
        p_l=set(py)            这步是转换为集合
        l_i=set(li)
交集    print(p_l.intersection(l_i))              或者这样写一样效果:print(p_l&l_i)
并集    print(p_l.union(l_i))                        或者:print(p_l|l_i)
差集    print(p_l.difference(l_i))                    或者:print(p_l-l_i)
交叉补集print(p_l.symmetric_difference(l_i))      或者:print(p_l^l_i)        意思就是取两个集合之中不同的元素
差集更新p_l.difference_update(l_i)        意思也是说求完差集,将他更新到p_l

- isdisjoint()
    判断两个集合间是否有交集,有返回值就是True真,没有就是False假
    s1={1,2}
    s2={3,5}
    print(s1.isdisjoint(s2))
- issubset()
    判断一个集合是否是另外一个集合的子集合,也是就是包含,有返回值就是True真,没有就是False假
    s1={1,2}
    s2={1,2,3}
    print(s1.issubset(s2))    这里s1是s2的子集合
- issuperset()
    判断一个集合是否是另外一个集合的父集合,也是就是包含,有返回值就是True真,
    s1={1,2}
    s2={1,2,3}
    print(s1.issuperset(s2))    这里s2是s1的父集合
- update()
    功能是更新集合,将s2的内容更新到s1
    s1={1,2}
    s2={1,2,3}
    s1.update(s2)
- frozenset()
    功能是定义一个不可变的集合,原本集合是可变的
    s=frozenset('hello')
*******************{END}*******************

 

posted @ 2020-02-20 00:14  博客威  阅读(160)  评论(0编辑  收藏  举报