zoukankan      html  css  js  c++  java
  • python中的深拷贝与浅拷贝

    关于python的深拷贝和浅拷贝,首先来个官方的介绍:

     反正我看的不咋明白,来个实例解释一下吧!开干!!!!

    import copy
    
    a = ['a','b','c','d']  # 首先我们定义了一个我们用于操作的数组
    
    b = a  # 此时进行深拷贝
    
    print("这是a的地址" + str(id(a)))
    print("这是b的地址" + str(id(b)))
    print("a的地址是否和b一样呢?" + str(id(a) == id(b)))
    
    c = copy.copy(a) #此时进行浅拷贝
    
    print("这是a的地址" + str(id(a)))
    print("这是c的地址" + str(id(c)))
    print("a的地址是否和c一样呢?" + str(id(a) == id(c)))
    #然并软貌似看不出啥东西来,你以为这就结束了?醒醒快开学了
    #下面来个我的验证方法,网上有好多将这个深拷贝和浅拷贝的但是我没看懂
    
    
    #进入正题
    a.pop()#现在我移除一下a中的最后一个元素
    print("a中的元素:"+str(a))
    print("深拷贝b中的元素:"+str(b))
    print("浅拷贝c中的元素:"+str(c))

    运行结果:

    网上有些资料说copy方式复制的是浅拷贝,我也没有去看官方的文档,所以我从定夺,有资料的小伙伴可以发给我一下。

  • 相关阅读:
    Shader-另类实现
    Unity3d- 资源
    我不快乐
    陷入了一个NGUI自适应的一个坑
    ngui 自适应
    NGUI的数据绑定
    我已经很努力,但是依旧写给自己
    那些奇葩的叫法
    C#修改类模板
    开启Unity3D之旅
  • 原文地址:https://www.cnblogs.com/xiaobaidaka/p/13049197.html
Copyright © 2011-2022 走看看