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、深拷贝

    所有元素都新建了新对象

  • 相关阅读:
    超市商品购买与管理系统
    以后写博客必须有计划一点
    关于变量初始化的问题
    先思考,后动手。
    springmvc springboot springcloud 三者的区别?
    3.20计算机组成原理课堂笔记
    作业1(基本题)JSP基本语法相关练习
    下载 Java
    地区sql
    maven ssm 编译异常记录:
  • 原文地址:https://www.cnblogs.com/tuobei/p/9372904.html
Copyright © 2011-2022 走看看