zoukankan      html  css  js  c++  java
  • 集合

    int float list  dict tuple set
    集合天生去重

    循环删LIST里面的数据的时候,结果会不正确
    a=[1,1,2,3,4,5,6,8]
    0 1 2 3 4 5 6 7

    for i in a:
    if i%2!=0:
    a.remove(i)
    print(a)


    第一轮 (删除的时候LIST已经变了,第一轮是0 第二轮到下标为1
    [1,2,3,4,5,6,8]
    #0 1 2 3 4 5 6 #下标改变了


    复制一个一模一样的,循环a2,删除a里的元素,就不会有错
    a=[1,1,2,3,4,5,6,8]
    a2=[1,1,2,3,4,5,6,8]

    浅拷贝和深拷贝的区别就是深拷贝会重新开辟一个内存空间
    print(id(a))
    print(id(a2))

    for i in a2:
    if i%2!=0:
    a.remove(i)
    print(a)

    import copy
    #浅拷贝
    #深拷贝

    a2=copy.deepcopy(a) #深拷贝
    a2=a #浅拷贝——内存地址是相同的,指向的是同一个内存地址
    print(id(a))
    print(id(a2)) #浅拷贝和深拷贝的区别就是深拷贝会重新开辟一个内存空间


    集合天生去重,集合也是无序的
    s=set() #定义一个空集合
    s2=set('12344455667789')
    print(s2)
    s3={'1','1','3','4','5','6','7'} #集合
    d={'k':'v'} #字典


    交集 并集 差集
    就是两个集合相同的地方
    print(s3 & s2) #取交集
    print(s3.intersection(s2)) #取交集
    并集————把两个集合并到一起,然后去重
    print(s2|s3)#取并集
    print(s2.union(s3))#取并集

    差集————s4里面有,s5里没有的
    取一个集合存在,另一个集合不存在的元素
    s4={1,2,3}
    s5={1,4,6}
    print(s4-s5)
    print(s4.difference(s5))

    对称差集————两集合里面都没有(去掉两集合里面都有的)
    print(s4^s5)
    print(s4.symmetric_difference(s5))

    s4.add('ss') #加元素
    print(s4)
    s4.pop() #随机删一个
    print(s4)
    s4.remove('ss')#指琮删除哪个
    s4.update({9,5,5})#把另外一个集合加进去

    print(s4)
  • 相关阅读:
    Node.js EventEmitter
    Node.js 事件循环
    Node.js 回调函数(阻塞与非阻塞)
    Node.js REPL(交互式解释器)
    NPM使用介绍
    H5表单验证特性(杂七杂八知识点)
    HTML5存储之indexedDB
    本地存储localStorage和sessionStorage
    高德地图API实例--移动端婚礼请帖
    高德地图API之DOM事件+自定义事件
  • 原文地址:https://www.cnblogs.com/jiadan/p/8763536.html
Copyright © 2011-2022 走看看