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

    >>> student={"100":"zhansan","aihao":["football","music"]}
    >>> student
    {'100': 'zhansan', 'aihao': ['football', 'music']}
    >>> student_copy=student.copy()
    >>> student_deepcopy=copy.deepcopy(student)
    >>> id(student['100'])
    2312245610904
    >>> id(student_copy['100'])
    2312245610904
    >>> id(student_deepcopy['100'])
    2312245610904
    >>> id(student['aihao'])
    2312245623240
    >>> id(student_copy['aihao'])
    2312245623240
    >>> id(student_deepcopy['aihao'])
    2312245624200

    >>> x
    {'name': 'quit', 'lang': ['python', 'java', 'C']}
    >>> y
    {'name': 'qian', 'lang': ['python', 'java', 'C']}
    >>> z
    {'name': 'quit', 'lang': ['python', 'java', 'C']}
    >>> y['lang'].remove('C')
    >>> x
    {'name': 'quit', 'lang': ['python', 'java']}
    >>> y
    {'name': 'qian', 'lang': ['python', 'java']}
    >>> z
    {'name': 'quit', 'lang': ['python', 'java', 'C']}
    >>> z['name']='shen'
    >>> x
    {'name': 'quit', 'lang': ['python', 'java']}
    >>> y
    {'name': 'qian', 'lang': ['python', 'java']}
    >>> z
    {'name': 'shen', 'lang': ['python', 'java', 'C']}
    >>> z['lang'].remove('java')
    >>> x
    {'name': 'quit', 'lang': ['python', 'java']}
    >>> y
    {'name': 'qian', 'lang': ['python', 'java']}
    >>> z
    {'name': 'shen', 'lang': ['python', 'C']}

    1、浅拷贝

    列表这类对象仍然是复制了引用,没有重建新对象

    字符串、数字等对象重新建立了新对象

    2、深拷贝

    所有元素都新建了新对象

  • 相关阅读:
    扩展卢卡斯定理
    扩展中国剩余定理
    扩展欧拉定理
    拓展BSGS
    删边最短路
    树 上 差分
    P4568 JLOI 飞行路线 分层最短路板子
    最短路相关
    P3758 TJOI2017 可乐
    bzoj4173 数学
  • 原文地址:https://www.cnblogs.com/tuobei/p/9372904.html
Copyright © 2011-2022 走看看