zoukankan      html  css  js  c++  java
  • 深浅拷贝

    1. 基础数据类型补充

    之前已经发过大多数的基本数据类型的知识

    join()把传递进去的参数进行迭代. 获取到的每个元素和前面的*进行拼接. 得到的是字符串

    split() 切割. 切割的结果是列表

    列表和字典: 都不能在循环的时候直接删除

    把要删除的内容记录在新列表中然后循环这个新列表. 删除列表(字典)

    删除球类
    lst = ["篮球", "足球", "羽毛球", "台球", "网游"]
    li = []
    for el in lst:
        if "" in el:
            li.append(el)
    for el in li:
        lst.remove(el)
    print(lst)   #["网游"]

    fromkeys()

    易错1: 返回新字典. 不会更改老字典

    dic = {}
    xdic = dic.fromkeys("我是","嘿嘿嘿")
    print(dic)  #  {}
    print(xdic)  #  {'我': '嘿嘿嘿', '是': '嘿嘿嘿'}

    易错2: 当value是可变的数据类型. 各个key共享同一个可变的数据类型. 其中一个被改变了. 其他都跟着变

    d = dict.fromkeys("我是",[])
    print(d)   #  {'我': [], '是': []}
    d[""].append("")
    print(d)   #  {'我': ['呵'], '是': ['呵']}

    2. 深浅拷贝

    1. = 没有创建新对象, 只是把内存地址进行了复制

    lst = ["篮球", "足球", "羽毛球", "台球", "网游"]
    lst2 = lst1  
    print(id(lst1))   #内存地址 931928675976
    print(id(lst2))   #内存地址 931928675976
    print(lst1)   #   ["篮球", "足球", "羽毛球", "台球", "网游"]
    print(lst2)   #   ["篮球", "足球", "羽毛球", "台球", "网游"]
    # 内存地址一样,就是两个列表指向同一个内存地址

    2. 浅拷贝 lst.copy() 只拷贝第一层.

    lst = ["篮球", "足球", "羽毛球", "台球", "网游"]
    lst2 = lst1.copy() 
    print(id(lst1))  #  内存地址652172531464
    print(id(lst2))  #  内存地址652173290568
    print(lst1)  #  ["篮球", "足球", "羽毛球", "台球", "网游"]
    print(lst2)  #  ["篮球", "足球", "羽毛球", "台球", "网游"]
    # 仅是内容相同,内存地址不同,只是修改表面

    3. 深拷贝

    import copy

    copy.deepcopy() 会把对象内部的所有内容进行拷贝

    import copy
    
    lst = ["篮球", "足球", "羽毛球", "台球", "网游"]
    lst2 = copy.deepcopy(lst1)
    print(id(lst1))  #  内存地址72498038856
    print(id(lst2))  #  内存地址72495798024
    print(lst1)  #  ["篮球", "足球", "羽毛球", "台球", "网游"]
    print(lst2)  #  ["篮球", "足球", "羽毛球", "台球", "网游"]
    #  内存地址不同,内容相同,完全复制成另一个列表
  • 相关阅读:
    hadoop-1.2.1-1.x86_64.rpm、jdk-7u45-linux-x64.tar.gz安装(64位)
    如何卸载rpm包
    html+css基础知识总结
    css常用公共样式
    jquery时间控件datepicker
    jquery事件重复绑定的快速解决方法
    原生javascript里jsonp的实现原理
    Bootstrap分页插件--Bootstrap Paginator
    数据库基础知识(1)--数据库php连接
    jQuery radio取值,checkbox取值,select取值
  • 原文地址:https://www.cnblogs.com/fu-1111/p/10066303.html
Copyright © 2011-2022 走看看