• Python 集合


    #####集合#####
    #由不同元素组成,集合中的元素都是无序的,集合中的元素必须全为不可变类型
    #不可变类型有:字符串、数字、字符、元祖
    s = {1,2,3,4,5,6,1,3,5}
    print(s)
    s = set('hello')
    print(s)

    d = set (['hello','nihao','sawadika','nihao'])
    print(d)

    #add()增加元素
    s.add('nihao')
    s.add(8)
    print(s)

    #copy()
    s1 = s.copy()
    print(s1)

    #clear()
    s1.clear()
    print(s1)

    #pop() 随机删除
    print(s)
    s.pop()
    print(s)

    #remove() 指定删除 ,删除元素不存在会报错
    #s.remove('h')
    print(s)
    # s.remove('lskdjflsd') 删除不存在的元素会报错
    # print(s)

    #discard() 指定删除 ,删除元素不存在不会报错
    s.discard('o')
    print(s)
    s.discard('lskdjflsd')
    print(s)

    name_python = ['xiaoming','xiaoli','xiaoqian']
    name_linux =['xiaoli','xiaoyan','xiaogang','xiaoqian']
    name_both = []
    for name in name_python:
    if name in name_linux:
    name_both.append(name)

    print(name_both)

    #列表转换成集合
    p_s = set(name_python)
    l_s = set(name_linux)
    print(p_s,l_s)

    print('-------------交集--------------------')
    #集合求交集

    print(p_s&l_s)
    #集合求并集
    print(p_s.union(l_s))

    print(p_s|l_s)

    #差集
    print(p_s-l_s)
    print(l_s-p_s)

    #交叉补集
    print(p_s^l_s)

    #判断是否有交集,有则返回False,无则返回True
    print(p_s.isdisjoint(l_s))

    #判断s1是否为s2的子集,若是则返回true,否则返回false
    s1 = {1,2}
    s2 = {1,2,3}
    print(s1.issubset(s2)) #s1s2的子集

    #判断s2是否为s1的父集,若是则返回true
    print(s2.issuperset(s1))

    #update 更新值 update更新多个值,add更新一个值
    s1.update(s2)
    print(s1)


    #集合为可变的类型,for循环可遍历的为可变类型,但可定义不可变集合 frozenset()
    s = frozenset('hello') #定义不可变类型的集合
    print(s)
    names = ['alex','alex','zhangdan','yanliang']
    n1 = set(names)
    print(n1)
    names = list(n1)
    print(names)

    #list去重,可以一步实现 names = list(set(names)) 但是通过集合去重的位置可能发生变化
  • 相关阅读:
    C++指针
    写的第一个 JavaCript
    VB.NET中实现"关机/休眠/重启/注销"的类
    VB&VB.NET速查表
    把一个数组的值赋给另一个数组(VB.NET)
    设置装备陈列.htaccess的一些问题结果总结
    httpd.conf文件设置装备布置详解2
    httpd.conf文件设置装备安放详解3
    httpd.conf文件设置详解1
    Red Hat下若何架设FTP做事器
  • 原文地址:https://www.cnblogs.com/lqcjlu/p/12749665.html
Copyright © 2020-2023  润新知