zoukankan      html  css  js  c++  java
  • python之集合

    集合:可变的数据类型,他里面的元素是不可变的数据类型,无序,不重复
    不可变是可哈希
    set1 = set({1,2,3})
    set2 = {1,2,3,[2,3],{'name':'alex'}} #集合元素不可变的 所以输出错误
    print(set1)
    print(set2)

    增:
    1.#add
    set1.add('alex')
    2.#update
    set1.update('abc') #迭代增加 把a b c分别增加

    删:
    1.#pop
    set.pop() #随机删除 有返回值
    print(set1)

    2.#remove
    set.remove('alex') #按元素

    3.#clear 清空
    set.clear()

    4.#del 删除整个集合

    查:(只能for循环查)
    for i in set1:
    print(i)

    交集:
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    set3 = set1&set2
    print(set3)
    print(set1.intersection(set2))

    并集:
    print(set1 | set2)
    print(set2.union())

    反交集:
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1^set2)
    print(set1.symmetric_difference(set2))

    差集:
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1-set2)# set1独有的
    print(set1.difference())

    子集:
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1<set2)
    print(set1.issubset())#返回布尔值

    超集:
    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1>set2)
    print(set1.issuperset())#返回布尔值
    print(set1.issubset())#返回布尔值

    去重(面试题):
    li = [1,2,33,33,2,1,4,5,6,6]
    set1 =set(li)
    li = list(set1)
    print(li)

    frozenset不可变集合,让集合变成不可变集合:
    s = frozenset('barry')
    只读无序:
    for i in s :
    print(i)

  • 相关阅读:
    操作系统的安装与启动基本原理
    Arch linux安装
    18 个最佳代码编辑器/IDE推荐
    2011年排名前七位的Linux操作系统。
    十大流行linux
    Java中浮点型数据Float和Double进行精确计算的问题
    Inside JVM 内存模型
    java常见面试题及答案
    Java内存模型
    虚拟机性能监控与故障处理工具
  • 原文地址:https://www.cnblogs.com/chif/p/9483433.html
Copyright © 2011-2022 走看看