zoukankan      html  css  js  c++  java
  • Python集合

    1集合是一个无序的,不重复的数据组合,它的主要作用如下(set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key):

      去重,把一个列表变成集合,就自动去重了

      关系测试,测试两组数据之前的交集、差集、并集等关系

    2(去重)

    1 # -*- coding:utf-8 -*-
    2 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    3 print(type(s))
    4 print(s)

    输出结果:

    1 <class 'set'>
    2 {1, 2, 3, 4, 5, 'tin', 12, ('tj', 120)}

    (关系测试)

    交集:

    1 # -*- coding:utf-8 -*-
    2 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    3 s2={123,23,4,5,6,7,8,}
    4 #交集,把相同的元素取出来
    5 print(s2.intersecti(s))     #或 print(s2 & s)
    
    

    输出结果:

    {4, 5}

    并集

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}  #并集
    3 print(s2.union(s))     #或  print(s2 | s)

    输出结果:

    {1, 2, 3, 4, 5, 6, 7, 8, ('tj', 120), 12, 'tin', 23, 123}

    差集

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}   #差集
    3 print(s2.difference(s))  # 或 print(s2-s)

    输出结果:

     1 {6, 7, 8, 23, 123} 

    对称差集

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}    
    3 print(s2.symmetric_difference(s))   #或 print(s2 ^ s)

    输入结果:

     {1, 2, 3, 6, 7, 8, 12, 'tin', 23, ('tj', 120), 123} 

    随机删除元素:

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}
    3 print(s2.pop())   #pop 随机删除元素

    输出结果:4

    删除元素(可以任意删除一项):

    1 s2={123,23,4,5,6,7,8,}
    2 s.remove(2)
    3 print(s)

    输出结果:

    {1, 3, 4, 5, 'tin', 12, ('tj', 120)}

    父集:

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}
    3 s.remove(2)
    4 print(s)
    5 print(s2.issuperset(s))

    输出结果:

    1 {1, 3, 4, 5, 12, ('tj', 120), 'tin'}
    2 False

    子集:

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}
    3 s.remove(2)
    4 print(s)
    5 print(s2.issubset(s))

    输出结果:

    1 {1, 3, 4, 5, 'tin', 12, ('tj', 120)}
    2 False

    对称并集:

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}
    3 s.remove(2)
    4 print(s)
    5 s2.difference_update(s)
    6 print(s2)

    输出结果:

    1 {'tin', 1, 3, 4, 5, ('tj', 120), 12}
    2 {6, 7, 8, 23, 123}

    添加元素:

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}
    3 s2.add(18)
    4 print(s2)
    5 s.add(21)
    6 print(s)

    输出结果:

    1 {4, 5, 6, 7, 8, 18, 23, 123}
    2 {('tj', 120), 1, 2, 3, 4, 5, 12, 'tin', 21}

    合并多项元素:

    1 s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
    2 s2={123,23,4,5,6,7,8,}
    3 s.update(s2)
    4 print(s)

    输出结果:

    {1, 2, 3, 4, 5, 6, 7, 8, 12, 23, 'tin', 123, ('tj', 120)}
  • 相关阅读:
    数字证书原理,公钥私钥加密原理
    Ubuntu 文件文件夹查看权限和设置权限
    Python glob使用
    python split(),os.path.split()和os.path.splitext()函数用法
    python sys.argv[]用法
    python将图片转base64,前端显示
    log4j简单使用
    Log4j简介
    ibatis/mybatis显示sql语句 log4j.properties配置文件
    mybatis WARN No appenders could be found for logger的解决方法
  • 原文地址:https://www.cnblogs.com/zqxqx/p/8013212.html
Copyright © 2011-2022 走看看