美文网首页
Python 集合操作

Python 集合操作

作者: 仙岚 | 来源:发表于2018-06-28 18:00 被阅读0次

集合 set

集合用于包含一组无序的对象
与列表和元组不同,集合是无序的,也无法通过数字进行索引。
集合中的元素不能重复
set和dict一样,只是没有value,相当于dict的key集合
由于dict的key是不重复的,且key是不可变对象因此set也有如下特性:

▷不重复,(互异性),也就是说集合是天生去重的
▷元素为不可变对象,(确定性,元素必须可hash)
▷集合的元素没有先后之分,(无序性)

python3.x集合的内置函数有17个

class set(object):
    """
    set() -> new empty set object
    set(iterable) -> new set object
    
    Build an unordered collection of unique elements.
    """
是把要传入的元素做为一个整个添加到集合中
def add(self, *args, **kwargs): # real signature unknown
    """
    Add an element to a set.
    
    This has no effect if the element is already present.
    """
    pass
清空集合里面的所有元素
def clear(self, *args, **kwargs): # real signature unknown
    """ Remove all elements from this set. """
    pass
复制集合里面的所有元素 ,返回一个浅复制
def copy(self, *args, **kwargs): # real signature unknown
    """ Return a shallow copy of a set. """
    pass
求两个集合里面的不同的元素 ,又称差
def difference(self, *args, **kwargs): # real signature unknown
    """
    Return the difference of two or more sets as a new set.
    
    (i.e. all elements that are in this set but not the others.)
    """
    pass
返回删除了 set “集合2”中含有的元素后的 set “集合1”
def difference_update(self, *args, **kwargs): # real signature unknown
    """ Remove all elements of another set from this set. """
    pass
如果在 set “集合”中存在元素 x, 则删除
def discard(self, *args, **kwargs): # real signature unknown
    """
    Remove an element from a set if it is a member.
    
    If the element is not a member, do nothing.
    """
    pass
求两个集合里面相同的元素,又称并. 返回只保留含有 set “集合2”中元素的 set “集合1”
def intersection(self, *args, **kwargs): # real signature unknown
    """
    Return the intersection of two sets as a new set.
    
    (i.e. all elements that are in both sets.)
    """
    pass
返回只保留含有 set “集合2”中元素的 set “集合1” ,并更新自己
def intersection_update(self, *args, **kwargs): # real signature unknown
    """ Update a set with the intersection of itself and another. """
    pass
判断两个集合是不是不相交,并返回
def isdisjoint(self, *args, **kwargs): # real signature unknown
    """ Return True if two sets have a null intersection. """
    pass
判断集合是不是包含其他集合,等同于a>=b
def issubset(self, *args, **kwargs): # real signature unknown
    """ Report whether another set contains this set. """
    pass
判断集合是不是被其他集合包含,等同于a<=b
def issuperset(self, *args, **kwargs): # real signature unknown
    """ Report whether this set contains another set. """
    pass
删除并且返回 set “集合”中的一个不确定的元素, 如果为空则引发 KeyError
def pop(self, *args, **kwargs): # real signature unknown
    """
    Remove and return an arbitrary set element.
    Raises KeyError if the set is empty.
    """
    pass
从 set “集合”中删除元素 , 如果不存在则引发 KeyError
def remove(self, *args, **kwargs): # real signature unknown
    """
    Remove an element from a set; it must be a member.
    
    If the element is not a member, raise a KeyError.
    """
    pass
返回一个新的 set 包含外面和里面中不重复的元素,也就是两个集合不重复的元素
def symmetric_difference(self, *args, **kwargs): # real signature unknown
    """
    Return the symmetric difference of two sets as a new set.
    
    (i.e. all elements that are in exactly one of the sets.)
    """
    pass
返回含有 set “里面”或者 set “外面”中有而不是两者都有的元素的 set “外面”
def symmetric_difference_update(self, *args, **kwargs): # real signature unknown
    """ Update a set with the symmetric difference of itself and another. """
    pass
把两个集合连接起来,又称并
def union(self, *args, **kwargs): # real signature unknown
    """
    Return the union of sets as a new set.
    
    (i.e. all elements that are in either set.)
    """
    pass
把两个集合连接起来,又称并
def update(self, *args, **kwargs): # real signature unknown
    """ Update a set with the union of itself and others. """
    pass

1.定义集合

a1=[1,2,3,4]
print(set(a1))
>>> {1, 2, 3, 4}
#或者直接定义一个集合
a2_set={1,2,3,4,5}

2.增(更新)

set.add()
set.update([])
# set.add() 只能增加一个, 不能同时增加多个值
a1={1,2,3,4}
a1.add(8)
a1
>>> {1, 2, 3, 4, 8}
--------------------------------------
a1.add(11,12)    # 同时增加多个值报错
Traceback (most recent call last):
  File "<input>", line 1, in <module>
TypeError: add() takes exactly one argument (2 given)
--------------------------------------
""" Update a set with the union of itself and others. """
# a2 集合与 a1 集合 合并更新成为新的 a2 集合
a1={1,2,3,4}
a2={11,12,13}
a2.update(a1)
a2
>>> {1, 2, 3, 4, 8, 11, 12, 13}

相关文章

  • Python精简入门学习(十三)

    Python精简入门学习之集合 -set -创建集合 -添加操作 -清空操作 -差集操作 -交集操作 -并集操作 ...

  • Python基础-集合

    Python基础-集合 1.定义集合(元素不能重复) 2.集合操作

  • Python3 小技巧

    集合操作 字典操作 两个字典 相交、合并、相差 Python 映射 Python 内置函数 map();map()...

  • Python 集合操作

    集合 set 集合用于包含一组无序的对象与列表和元组不同,集合是无序的,也无法通过数字进行索引。集合中的元素不能重...

  • python集合操作

    python的集合操作 set是一个无序不重复的序列 可以用 { } 或者 set( ) 函数创建集合 集合存放不...

  • Python集合操作

    列表(List)、映射(Dict)、集合(Set)是python的三种基本数据结构,日常的工作中需要熟练掌握它们的...

  • python集合操作

    判断两个list是否相等 判断两个tuple是否相等 判断两个set是否相等 list转set list转tupl...

  • python操作redis集合

    Redis 数据库集合对象(set object)是由string类型的无重复元素的无序集合,底层编码可以是int...

  • Python set 集合操作

    set集合是元素的聚集,具有无序,唯一性两大特点。常见的用途包括成员检测、从序列中去除重复项以及数学中的集合类计算...

  • Python集合的操作

    有时候在对比两个数组,如果运用上集合的话就会相当精妙。 基本操作 参考文章 以下来自官方参考:

网友评论

      本文标题:Python 集合操作

      本文链接:https://www.haomeiwen.com/subject/odknyftx.html