zoukankan      html  css  js  c++  java
  • 集合

    集合(set)是一个无序的不重复元素序列。
    可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
    创建格式:

    parame = {value01,value02,...}
    或者
    set(value)

    下面为集合常用的方法:

    方法描述
    add()为集合添加元素
    clear()移除集合中的所有元素
    copy()拷贝一个集合
    difference()返回多个集合的差集
    difference_update()移除集合中的元素,该元素在指定的集合也存在。
    discard()删除集合中指定的元素
    intersection()返回集合的交集
    intersection_update()返回集合的交集。
    isdisjoint()判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。
    issubset()判断指定集合是否为该方法参数集合的子集。
    issuperset()判断该方法的参数集合是否为指定集合的子集
    pop()随机移除元素
    remove()移除指定元素
    symmetric_difference()返回两个集合中不重复的元素集合。
    symmetric_difference_update()移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。
    union()返回两个集合的并集
    update()给集合添加元素

    拓展:
    s.update( “字符串” ) 与 s.update( {“字符串”} ) 含义不同:
    s.update( {“字符串”} ) 将字符串添加到集合中,有重复的会忽略。
    s.update( “字符串” ) 将字符串拆分单个字符后,然后再一个个添加到集合中,有重复的会忽略。

    >>> thisset = set(("Google", "Runoob", "Taobao"))
    >>> print(thisset)
    {'Google', 'Runoob', 'Taobao'}
    >>> thisset.update({"Facebook"})
    >>> print(thisset) 
    {'Google', 'Runoob', 'Taobao', 'Facebook'}
    >>> thisset.update("Yahoo")
    >>> print(thisset)
    {'h', 'o', 'Facebook', 'Google', 'Y', 'Runoob', 'Taobao', 'a'}
    >>>

    1、对于 python 中列表 list、tuple 类型中的元素,转换集合是,会去掉重复的元素如下:

    >>> list = [1,1,2,3,4,5,3,1,4,6,5]
    >>> set(list)
    {1, 2, 3, 4, 5, 6}
    >>> tuple = (2,3,5,6,3,5,2,5)
    >>> set(tuple)
    {2, 3, 5, 6}

    2、集合对 list 和 tuple 具有排序(升序),举例如下:

    >>> set([9,4,5,2,6,7,1,8])
    {1, 2, 4, 5, 6, 7, 8, 9}
    >>> set([9,4,5,2,6,7,1,8])
    {1, 2, 4, 5, 6, 7, 8, 9}
    别废话,拿你代码给我看。
  • 相关阅读:
    第二次冲刺(二)
    第二次冲刺(一)
    5月30日学习日志
    5月29日学习日志
    5月28日学习日志
    5月27日学习日志
    5月26日学习日志
    粒子群算法-PSO
    花授粉优化算法-python/matlab
    花授粉优化算法
  • 原文地址:https://www.cnblogs.com/lvxueyang/p/13707524.html
Copyright © 2011-2022 走看看