zoukankan      html  css  js  c++  java
  • 补上:17至18日集合学习笔记

    集合(set)  s=set(可以放可迭代的值:字符串  列表  元组   字典)     s=set("hello")

    集合定义:由不同元素组成,集合中的数是一组无序的可哈希(不可变值)的值。

    1.不同的元素(会自动弃除相同的元素)

    2.无序(集合无付使用下标起值,因为是无序)

    3.存放不可变值(数字   字符串  元组)

    s={"test",12,34,(1,3,"hh")}——————集合方式(大括号)

    查看类型:使用type(s)

    集合的内置方法:

     add(增加值,只能不同值)

    clear(清空)

    copy(拷贝)

    pop(删除,无序的删除任意值)

    remove(删除指定的元素,如果删除的元素不存在会爆错)

    discard(删除指定元素,不存在但是不爆错,继续可以执行下面的程序)

    集合关系运算交、差、并的相关运算

    补充:集合可以弃重,但是弃重后是无序的

    l1=[11,22,33,33]
    l2=[22,33,44,44]
    l1_1=set(l1)#变为集合
    l1_2=set(l2)#变为集合
    print(l1_1,l1_2)

    #求交集
    print(l1_1.intersection(l1_2))
    print(l1_1 & l1_2)
    #求并集
    print(l1_1.union(l1_2))
    print(l1_1 | l1_2)

    # 求差集 l1_1 - l1_2 是存在也左边的集合,不存在右边的集合
    print(l1_1.difference(l1_2)) #最后是11
    print(l1_1-l1_2)
    print(l1_2.difference(l1_1))#最后是44
    print(l1_2-l1_1)

    #交叉补集     把2个合到一块,在除去相同的部分
    print(l1_1.symmetric_difference(l1_2))
    print(l1_2^l1_1)

    集合的方法:
    difference_update(求出不同,更新列表里面的内容)
    intersection_update(求相同同,更新列表里面的内容)
    issubset(判断子集 或是 父集,包含关系)
    isdisjoint(判断2个集合是否有相同的内容)
    update(并集union一样,只是更新对应的内容)——————同时可以更新多个值


    补充:
    s=frozenset("hello")#变成一个不可变的集合,不能进行任何操作
    print(s)

    集合去重,可以在转换成列表
  • 相关阅读:
    Sublime keymap 个性修改
    Sublime setting 个性修改
    微信公众接口测试频道
    Thinkphp 架构笔记
    mac ssh 远程容易断线解决方案
    日期按日、周、月 递增
    Centos Apache 多站点配置
    tar解压
    mac 将本地文件上传到vps
    ssh 连接vps
  • 原文地址:https://www.cnblogs.com/jianchixuexu/p/11518537.html
Copyright © 2011-2022 走看看