zoukankan      html  css  js  c++  java
  • 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
    
    
    
    
    
    
    
    
    
  • 相关阅读:
    基于AngularJS的前端云组件最佳实践
    光裁员有什么用,商业变现才是王道
    迄今为止最完整的推送说明书
    个推技术实现原理介绍
    安卓推送——个推服务端api使用误区
    Gerrit代码Review入门实战
    iOS AFNetworking HTTPS 认证
    iOS开发零碎知识点
    Xcode 如何删除过期的Provisioning Profile文件
    一个section刷新 一个cell刷新
  • 原文地址:https://www.cnblogs.com/gered/p/13308460.html
Copyright © 2011-2022 走看看