【Python-基础】数据类型--集合 Set

【Python-基础】数据类型--集合 Set,第1张

【基本属性】

 

        1. 可迭代 iterable        
        2. 可变 (但是集合内的元素为不可变对象,要求可哈希hashable)

s = {[1, 2, 3], "a", "b"}
>>> TypeError: unhashable type: 'list'

        3. 无序 (可以看作是没有value的字典)
        4. 集合内的元素不重复

【创建】

        1. s = {"hello", "world"}  直接使用{ }创建*
        *定义空集合不能使用改方法,因为s = {} 创建的为一个字典。


只能使用s = set () 来创建

        2. set() 使用set函数创建或转换

        3. {x for x in range (n)} 集合推导式

【计算】

s1 = {0, 1, 2, 3, 4, 5}
s2 = {0, 3, 4, 5, 5, 1, 2}
s3 = {1, 2, 3, 4, 5, 6, 7, 8, 9}

1. 判断是否相等
s1 == s2
>>> True 
s1 != s3
>>> True

2. 子集
s1.issubset(s3)
>>> True

3. 超集
s3.issuperset(s1)
>>> True

4. 交集
s1.intersection(s3)
>>> {1, 2, 3, 4, 5}
s1&s3
>>> {1, 2, 3, 4, 5}

5. 并集
s1.union(s3)
>>> {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
s1|s3
>>> {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

6. 差集
s1.difference(S3)
>>> {0}
s1 - s3
>>> {0}

7. 对称差集
s1.symmetric_diference(s3)
>>> {0, 6, 7, 8, 9}
s1 ^ s3
>>> {0, 6, 7, 8, 9}

【增加】

       1. s.add(obj) 一次添加一个元素
       2.s.update(obj) 至少添加一个元素,obj可以是字典、列表或者元组

【删除】

        1. del s   删除整个集合
        2. s.remove(obj) 一次删除一个指定元素,如不存在则产生KeyError
        3. s.discord(obj) 一次删除一个指定元素,如不存在不会抛出异常
        4. s.pop() 删除并返回一个任意元素
        5. s.clear() 情况集合

【修改】

        可以通过先增加新元素再删除要修改的元素来进行修改         

【查找】

        1. for循环遍历 

【其他常见 *** 作】
        1. 用in或not in来判断是否在集合中
        2. 去重,可以用集合内容的元素不重复这一特性来达到去重的效果

words = ["i", "like", "python", "you", "like", "python"]
print(set(words))
>>> {'you', 'python', 'i', 'like'}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/577994.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-11
下一篇 2022-04-11

发表评论

登录后才能评论

评论列表(0条)

保存