zoukankan      html  css  js  c++  java
  • Python 集合(Set)

    版权所有,未经许可,禁止转载


    章节


    集合

    集合是无序、无索引的数据集。在Python中,集合用花括号包裹。

    示例

    创建集合:

    thisset = {"自行车", "汽车", "高铁"}
    print(thisset)
    

    注意: 集合是无序的,因此项目将以随机顺序出现。

    访问集合项目

    不能通过索引来访问集合项,因为集合是无序的,这些项没有索引。

    但是您可以使用for循环遍历集合项,使用in关键字查询集合中是否存在指定值。

    示例

    遍历集合,并打印值:

    thisset = {"自行车", "汽车", "高铁"}
    
    for x in thisset:
      print(x)
    

    示例

    检查“汽车”是否出现在集合中:

    thisset = {"自行车", "汽车", "高铁"}
    
    print("汽车" in thisset)
    

    修改项目

    集合一旦创建,就不能更改,但是可以添加新项。

    添加项目

    要向集合中添加一项,使用add()方法。

    若要向集合添加多个项,使用update()方法。

    示例

    使用add()方法向集合添加一个项:

    thisset = {"自行车", "汽车", "高铁"}
    
    thisset.add("飞机")
    
    print(thisset)
    

    示例

    使用update()方法向一个集合添加多个项:

    thisset = {"自行车", "汽车", "高铁"}
    
    thisset.update(["飞机", "轮船", "电动车"])
    
    print(thisset)
    

    获取集合长度

    要确定一个集合有多少项,可以使用len()方法。

    示例

    获取集合长度:

    thisset = {"自行车", "汽车", "高铁"}
    
    print(len(thisset))
    

    删除项目

    要删除集合中的项,使用remove()discard()方法。

    示例

    使用remove()方法删除“汽车”:

    thisset = {"自行车", "汽车", "高铁"}
    
    thisset.remove("汽车")
    
    print(thisset)
    

    注意: 如果要删除的项不存在,remove()将引发错误。

    示例

    使用discard()方法删除“汽车”:

    thisset = {"自行车", "汽车", "高铁"}
    
    thisset.discard("汽车")
    
    print(thisset)
    

    注意: 如果要删除的项不存在,discard()不会引发错误。

    您还可以使用pop()方法删除项,但该方法只删除最后一项。因为集合是无序的,所以您不知道删除了哪些项。

    pop()方法的返回值是已删除的项。

    示例

    使用pop()方法删除最后一项:

    thisset = {"自行车", "汽车", "高铁"}
    
    x = thisset.pop()
    
    print(x)
    
    print(thisset)
    

    注意: 集合是无序的,所以当使用pop()方法时,您将不知道删除了哪个项。

    示例

    clear()方法清空集合:

    thisset = {"自行车", "汽车", "高铁"}
    
    thisset.clear()
    
    print(thisset)
    

    示例

    del关键字将删除整个集合,包括集合自身:

    thisset = {"自行车", "汽车", "高铁"}
    
    del thisset
    
    print(thisset)
    

    set()构造方法

    也可以使用set()构造方法来创建集合。

    示例

    使用set()构造方法创建集合:

    thisset = set(("自行车", "汽车", "高铁")) # 注意双圆括号
    print(thisset)
    

    集合方法

    Python有一组可以在set上使用的内置方法。

    方法 描述
    add()向集合中添加元素
    clear()从集合中移除所有元素
    copy()返回集合的副本
    difference()返回一个集合,该集合包含两个或多个集合之间的差别项目
    difference_update()移除此集合中与另一个集合相同的项
    discard()删除指定项
    intersection()返回一个集合,它是另外两个集合的交集
    intersection_update() 移除此集合中其他集合中不存在的项
    isdisjoint()返回两个集合是否有交集
    issubset()返回另一个集合是否包含此集合
    issuperset()返回此集合是否包含另一个集合
    pop()从集合中移除一个元素
    remove()移除指定的元素
    symmetric_difference()返回具有两个集合的对称差异的集合
    symmetric_difference_update() 插入来自这个集合和另一个集合的对称差异
    union()返回包含集合并集的集合
    update()使用此集合和其他集合的并集更新集合
  • 相关阅读:
    p3201&bzoj1483 梦幻布丁
    p1341 无序字母对
    p2590&bzoj1036 树的统计
    p1462 通往奥格瑞玛的道路
    p1522 牛的旅行 Cow Tours
    ARC097D Equals
    p2371&bzoj2118 墨墨的等式
    ARC097C K-th Substring
    欧拉函数入门合集(模板)
    主席树
  • 原文地址:https://www.cnblogs.com/jinbuqi/p/11371795.html
Copyright © 2011-2022 走看看