• 集合的常用操作及内置方法,数据类型汇总


    一、集合的常用操作及内置方法

    1、定义     s = {1,2,3,4,5,6,7,8}

      注意:集合内的元素必须是不可变类型;

           元素与元素之间用逗号隔开,不是键值对;

                集合内的元素都是无序的 

    2、空集合

    s = set()

        ps:定义空集合一定要用set关键字

    3、作用:

     (1)去重,集合内不可能出现相同的元素

     (2)关系运算:比如共同好友,共同关注,交叉并集等

    ps:用集合就是用上面两个功能 如果都用不上 那么就不要用
    4、 类型转换
    能够被for循环的数据类型都能够被转成集合
    s1 = set('egon is o DSB')
    print(s1) # {' ', 'e', 's', 'n', 'o', 'i', 'D', 'g', 'B', 'S'}
    s2 = set([1,2,3,4,5,6,7,7,7,7,7])
    print(s2) # {1, 2, 3, 4, 5, 6, 7}
    s3 = set({'username':'jason','password':123})
    print(s3)  # {'password', 'username'}

    5、去重

    s = {1,1,1,2,3,3,4,3,2,3,4,6,5,3,}
    print(s)  # 集合内如果有相同的元素会自动去重
    # 去重练习题
    l = [4,3,2,3,4,6,7,8,1,2,3]
    # 要求1 对列表进行去重不需要保持原来的元素顺序
    # 先转成集合
    s = set(l)
    # 再转成列表
    l1 = list(s)
    print(l1)
    # 要求2 对列表去重之后需要保持原来的元素顺序
    new_l = []
    for i in l:
        if i not in new_l:
            new_l.append(i)
    print(new_l)

    6、关系运算

    # 用户1的好友列表
    friends1 = {'jason','tank','tony','jerry'}
    # 用户2的好友列表
    friends2 = {'jason','tony','owen','oscar'}
    
    # 1 求两个用户的共同好友  交集
    # res = friends1 & friends2
    # print(res)  # {'jason', 'tony'}
    # 2 求两个用户所有的好友
    # res = friends1 | friends2
    # print(res)  # {'jerry', 'jason', 'oscar', 'tony', 'tank', 'owen'}
    # 3 求用户1独有的好友
    # res1 = friends1 - friends2
    # res2 = friends2 - friends1
    # print(res1,res2)  # {'jerry', 'tank'} {'owen', 'oscar'}
    # 4 求两个用户各自独有的好友            对称差集
    # res = friends1 ^ friends2
    # print(res)  # {'owen', 'jerry', 'tank', 'oscar'}
    # 5 子集 父集
    s1 = {12,3,4,5,6}
    s2 = {12,6}
    print(s1 > s2)  # s1是否是s2的父集
    print(s2 < s1)  # s2是否是s1的子集

    二、数据类型汇总

    1.整型int
    2.浮点型float
    3.字符串str
    4.列表list
    5.字典dict
    6.布尔值bool
    7.元组tuple
    8.集合set
  • 相关阅读:
    Mysql --学习:大量数据快速导入导出
    Mybatis 学习---${ }与#{ }获取输入参数的区别、Foreach的用法
    SSM 框架 ---项目整合
    SMM框架--maven创建web项目
    SSM框架—环境搭建(MyEclipse+Tomcat+MAVEN+SVN)
    Java中 try--catch-- finally、throw、throws 的用法
    Java集合:List、Set和Map的区别,ArrayList和LinkedList有何区别..........
    java中 this() 和super()的作用及用法
    Thread和Runnable的区别和联系、多次start一个线程会怎么样
    vue-devtools google扩展插件安装
  • 原文地址:https://www.cnblogs.com/guojieying/p/13300027.html
Copyright © 2020-2023  润新知