-->

python基础知识(五)---集合set

目录

前言

一、怎么创建集合

二、集合的增,删,改,查操作

集合的增加操作

删除操作

修改操作

查找操作

三、集合间的数学操作 

四、集合间的关系

五、集合的生成式

总结


前言

集合也是python的内置数据结构中的一种,与列表,字典一样都属于可变类型的序列,简单 来说集合就是没有value值的字典。但是注意的是:集合中的元素不允许重复,集合的元素也是无序的。

一、怎么创建集合

  • 集合的创建和其他数据结构差不多,都有两种创建方法:集合名={元素1,元素2···} 或者集合名=set(),注意:创建空集合时只能使用set(),不能使用{},因为{}创建的是字典。
    dictA={}
    setA={1,89,23}
    setB=set()
    print(type(dictA),type(setA),type(setB))

        运行结果

二、集合的增,删,改,查操作

集合的增加操作

  • add()   #调用add()方法,一次添加一个元素,如果元素存在则不进行任何操作。
    setA={1,89,23}
    setA.add("仰天大笑出门去")
    print(setA)

    运行结果

  • update(X)    #调用update(X)方法至少添中一个元素,X可以是集合,列表等等。

    setA={1,89,23}
    setA.update(["仰天大笑出门去","我辈岂是蓬篙人"])
    print(setA)

     运行结果

删除操作

  • remove()   #调用remove(),一次删除一个指定元素,如果指定的元素不存在会显示KeyError。
    setA={1,89,23, '我辈岂是蓬篙人', '仰天大笑出门去',67}
    setA.remove(67)
    print(setA)

    运行结果

  • discard()     #调用discard(),一次删除一个指定元素,如果指定的元素不存在不会显示异常。

    setA={1,89,23, '我辈岂是蓬篙人', '仰天大笑出门去'}
    setA.discard(67)
    print(setA)

     运行结果

  • pop()  #调用pop(),一次只删除一个任意元素。

    setA={1,89,23, '我辈岂是蓬篙人', '仰天大笑出门去'}
    setA.pop()
    print(setA)

     运行结果

  • clear() #调用clear(),清空集合。

    setA={1,89,23, '我辈岂是蓬篙人', '仰天大笑出门去'}
    setA.clear()
    print(setA)

    运行结果

  • del     #调用del就是把整个集合删除,对其他的数据结构也有用。

    setA={1,89,23, '我辈岂是蓬篙人', '仰天大笑出门去'}
    del setA
    print(setA)

     运行结果

修改操作

  • 集合的修改,可以先删除集合中的内容,然后再添加进去。
    setA={23, '我辈岂是蓬篙人', '仰天大笑出门去'}
    setA.remove(23)
    setA.update(("飞流直下三千尺","疑是银河落九天"))
    print(setA)

    运行结果

查找操作

  • 集合的查找可以用in  或者 not in 判断元素是否在集合中。
    setA={23, '我辈岂是蓬篙人', '仰天大笑出门去'}
    print(23 in setA)
    print("我辈岂是蓬篙人" not in setA)

    运行结果

三、集合间的数学操作 

  • 交集(&或intersection)【两个集合共有的元素】
    setA=set("hello,python")
    setB=set("hello,world")
    print(setA & setB)
    print(setA.intersection(setB))

    运行结果

  • 并集(union或|)【两个集合合并在一起】

    setA=set("hello,python")
    setB=set("hello,world")
    print(setA | setB)
    print(setA.union(setB))

     运行结果

  • 差集(difference或-)【两个集合不同的元素】

    setA=set("hello,python")
    setB=set("hello,world")
    print(setA - setB)
    print(setA.difference(setB))

     运行结果

  • 对称差集(symmentric_difference或^)【从自身集合中选出另一个集合没有的元素】

    setA=set("abcd")
    setB=set("abc123")
    print(setA ^ setB)
    print(setA.symmetric_difference(setB))

     运行结果

四、集合间的关系

  • 两个集合是否相等:可以用运算符==或!=进行判断
  • 一个集合是否是另一个集合的子集:可以调用方法issubset进行判断。
  • 一个集合是否是另一个集合的超集:可以调用方法issuperset进行判断。
  • 两个集合是否没有交集:可以调用方法isdisjoint进行判断(有交集是False,没有交集是Ture)。

五、集合的生成式

  • 集合的生成式和列表生成式一样。将  { }   修改成   [ ]    就是列表的生成式。
    setA= {i for i in range(10)}
    print(setA)

    运行结果


总结

以上就是集合的基础内容,如有不对的地方,请指教谢谢,拜拜啦。

posted @ 2022-09-13 21:10  密发渐消  阅读(45)  评论(0编辑  收藏  举报