zoukankan      html  css  js  c++  java
  • Python数据类型详解——集合

    Python数据类型详解——集合

    一、定义

    集合跟列表有点像,也是可以存一堆数据的,不过它有几个独特的特点:

    1、集合里的元素不可变,即不能再集合里存储列表(list)、字典(dict)。字符串、数字、元组等不可变类型可以存储再集合中。

    2、天生去重,即在集合里不会出现重复元素,就算你故意写入重复元素,集合也会自动去掉重复的,只保留一个。

    3、无序,集合中的元素没有先后之分。

    二、语法

    1、创建集合

    a = {2, 321, 'Kwan', 1, '小明', 'Kwan', 321}
    

    2、帮助列表去重

    将列表转换成集合,再转回列表,即可实现列表的去重

    a = ['Kwan', 'Kwan', 21, 21, '小明']
    a = list(set(a))	# 先转换成集合,再转换成列表
    

    三、增删查改操作

    a = {'Kwan', 21, 'male', 'LL', 43}
    
    # 增
    a.add('Kobe')
    
    # 删
    a.discard('male')   # 用discard()方法,删除指定的元素,若指定元素不存在,则do nothing
    a.pop()             # 用pop()方法,随即删除一个元素并返回这个元素
    a.remove('LL')      # 用remove()方法,同discard
    
    # 查
    if 'Kwan' in a:     # 用in方法
        pass
    
    # 改(没有改这个操作,集合不能改)
    

    四、关系运算

    a1 = {'Kwan', '小明', 'LL', 'PP', 'Kobe'}
    a2 = {'小明', 'LL', 'Alice', 'Jack', 'Neal'}
    print(a1 & a2)   	# &交集运算
    
    print(a1 | a2)	    # |并集运算
    
    print(a1 - a2)	    # -差集运算
    print(a2 - a1)
    
    print(a1 ^ a2) 	    # ^对称差集运算
    
    print(a1.isdisjoint(a2))    # 判断两个集合是不是相交的,返回True或者False
    print(a1.issubset(a2))	    # 判断a1是不是a2的子集,返回True或者False
    print(a1.issuperset(a2))	# 判断a1是不是a2的父集,返回True或者False
    
  • 相关阅读:
    卷积神经网络入门(1) 识别猫狗
    lumen 获得当前uri 如/xxx/{id}
    React ES5 (createClass) 和 ES6 (class)
    lumen 单元测试
    mysql 高级语法手记
    react手记(componentWillMount,componentDidMount等)
    lumen 事件
    PDO drivers no value in Windows
    BindingNavigator操作DatagridView的数据
    <input type="hidden" id="haha" name="wang" value="xiaodong" />
  • 原文地址:https://www.cnblogs.com/Kwan-C/p/11466419.html
Copyright © 2011-2022 走看看