• Python3中的集合(Set)


    【1】集合 set 的基本运算

    集合中的元素是不重复的
    集合是有默认展现方式,但实际上是无序的

    【1.1】把其他类型转换成集合 set(object)

    list_1 = [1,4,5,7,3,6,7,9]
    set_1=set(list_1)
    print(set_1,type(set_1))
    
    a = set('abracadabra')
    print(a)
    
    {1, 3, 4, 5, 6, 7, 9} <class 'set'>
    {'c', 'd', 'b', 'a', 'r'}
    

    【1.2】集合的交集(&)、并集(|)、差集(-)、对称差集(^)

    list_1={1,3,5,7,9}
    list_2={2,4,5,8,10}
    
    print('----------- 使用方法操作 ---------------')
    #交集
    print(list_1.intersection(list_2))
    #并集
    print(list_1.union(list_2))
    #差集
    print(list_1.difference(list_2))
    #对称差集,去掉了交集部分
    print(list_1.symmetric_difference(list_2))
    
    print('----------- 使用运算符操作 ---------------')
    
    #交集
    print(list_1 & list_2)
    #并集
    print(list_1 | list_2)
    #差集
    print(list_1 - list_2)
    #对称差集
    print(list_1 ^ list_2)
    
    print('----------- 子集交集等判断 ---------------')
    #子集的判断,是子集则为 True
    print(list_1.issubset(list_2))
    #父集的判断,是父集则为 True
    print(list_1.issubset(list_2))
    #交集的判断,如果没有交集则为True
    print(list_1.isdisjoint(list_2))
    
    
    ----------- 使用方法操作 ---------------
    {5}
    {1, 2, 3, 4, 5, 7, 8, 9, 10}
    {1, 3, 9, 7}
    {1, 2, 3, 4, 7, 8, 9, 10}
    ----------- 使用运算符操作 ---------------
    {5}
    {1, 2, 3, 4, 5, 7, 8, 9, 10}
    {1, 3, 9, 7}
    {1, 2, 3, 4, 7, 8, 9, 10}
    ----------- 子集交集等判断 ---------------
    False
    False
    False
    

    【1.3】集合的增(add,update)删(remove,pop,discard)

    list1={1,2,3,4,5}
    #添加一项
    list1.add(999)
    print(list1)
    
    #添加多项
    list1.update([111,222,333])
    print(list1)
    
    #删除 remove 删不存在则报错
    list1.remove(999)
    print(list1)
    
    #pop按照默认排列顺序从最前面删
    list1.pop()
    list1.pop()
    list1.pop()
    print(list1)
    list1.pop()
    list1.pop()
    list1.pop()
    print(list1)
    
    #discard 删除,删除不存在元素不会报错
    list1.discard(111)
    print(list1)
    
    {1, 2, 3, 4, 5, 999}
    {1, 2, 3, 4, 5, 999, 333, 111, 222}
    {1, 2, 3, 4, 5, 333, 111, 222}
    {4, 5, 333, 111, 222}
    {111, 222}
    {222}
    

    【1.4】元素是否在集合中

    list1={1,2,3,4,5}
    #判断某个元素是否在集合中
    print(1 in list1)
    print(5 not in list1)
    
    True
    False
    
    
    
    
    
    
    
    
    
  • 相关阅读:
    使用sorted函数对字典元素排序
    PAT (Basic)1004 成绩排名 (Python实现)
    Python中的a+=b和a=a+b之间的区别是什么?
    Shell while循环用法总结
    PAT (Basic)1027 打印沙漏 (Python实现)
    python 基础应用2
    python 基础知识1
    python 基础知识2-数据类型
    python 基础应用1
    PHP提高SESSION响应速度的方法
  • 原文地址:https://www.cnblogs.com/gered/p/13308460.html
Copyright © 2020-2023  润新知