首页 > 编程语言 > 详细

Python 集合

时间:2019-07-11 11:42:15      阅读:100      评论:0      收藏:0      [点我收藏+]

集合

集合 set
        集合是可变容器
        集合内的数据对象是唯一的(只有一个)
        集合是无序的存储结构,集合中的数据没有先后关系
        集合内的元素必须是不可变对象
        集合是可迭代对象
        集合是相当于只有键没有值的字典(键则是集合的数据)

    创建空集合
        s = set()

    创建非空集合
        s = {1, 2, 3}
        s = {3.14, True, (1970, 1, 1), hello}

    集合的构造函数 set
        set()
        set(iterable)

    示例:
        s = {1, 3, 5, 7}
        s = set(ABC)
        s = set(ABCCBA)
        s = set({1: 1, 2: 2, 5: 5})
        s = set([1, 0, 3.14, hello])
        s = set((abc, 123, True))

    集合的运算:
        交集,并集,补集,子集,超集

        s1 = {1, 2, 3}
        s2 = {2, 3, 4}

        & 生成两个集合的交集
            "同时存在于两个集合中的元素"
            s1 & s2 -> {2, 3} 
            
        | 生成两个集合的并集
            “两个集合的所有元素”
            s1 | s2 -> {1, 2, 3, 4}
            
        ^ 生成两个集合的对称补集
            "去掉同时存在于两个集合中的元素,返回剩下的所有元素"
            s1 ^ s2 -> {1, 4} 
            
        - 生成两个集合的补集
            “去掉同时存在与两个集合中的元素,返回第一个集合中剩下的元素”
            s1 - s2 -> {1} 
            s2 - s1 -> {4} 

        > 判断一个集合是否是另一个集合的超集
        < 判断一个集合是否是另一个集合的子集
            s1 = {1, 2, 3}
            s2 = {2, 3}
            s1 > s2 -> True
            s1 < s2 -> False

 

# sets.py 集合练习
manager = {John, Tom, Mike}
tech = {John, Mike, Ana, Oda}

print(manager & tech)  # both manager and tech  
print(manager - tech)  # manager but not tech
print(tech - manager)  # tech but not manager
print(Ana in manager)  # is Ana a manager?
print(manager ^ tech)  # who only plays one role?
print(len(manager | tech))  # how many employees

 

Python 集合

原文:https://www.cnblogs.com/noonjuan/p/11168400.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!