美文网首页
Python高级第二周

Python高级第二周

作者: 卑微小利 | 来源:发表于2018-08-19 19:26 被阅读0次

1,浅拷贝
^浅拷贝是对一个对象的顶层拷贝
^通俗的理解就是:拷贝了引用,并没有拷贝内容

In [2]: a = [11,22,33,44]

In [3]: id(a)
Out[3]:140654480911944

In [4]: b = a

In [5]: id(b)
Out [5]: 140654480911944

In [6]: a.append(55)

In [7]: a
Out[7]: [11,22,33,44,55]

In [8]: b
Out[8]: [11,22,33,44,55]

In [9]: a = {'name':'张杰'}

In [10]:id(a)
Out[10]:140654496320392

In [11]: b = a

In [12]: id(b)
Out[12]: 140654496320392

In [13]: a['ID'] = 100

In [10]: id(a)
Out[10]: 140654496320392

In [11]: b = a

In [12]: id(b)
Out[12]:  140654496320392

In [13]: a['ID'] = 100

In [14]: a
Out[14]: {'ID':100,'name':'张杰'}

In [15]: b
Out[15]: {'ID':100,'name':'张杰'}

In [16]: id(a)
Out[16]:  140654496320392

In[17]: id(b)
Out[17]: 140654496320392

2,深拷贝
^深拷贝是对于一个对象所有层次的拷贝(递归)

In [2]: import copy

In [3]: a = [1,2,3]

In[4]: id(a)
Out[4]: 139884679267656

In [5]: b = copy.deepcopy(a)

In[6]: id(b)
Out[6]: 139884679237704

In[7]: a
Out[7]: [1,2,3]

In [8]: b
Out[8]: [1,2,3]

In [9]:
In [2]: import copy

In[3]: a = [1,2,3]

In [4]: id(a)
Out[4]: 139884679267656

In [5]: b = copy.deepcopy(a)

In [6]: id(b)
Out[6]: 139884679237704

In [7]: a
Out[7]: [1,2,3]

In [8]: b 
Out[8]: [1,2,3]

In [9]: a.append(4)

In [10]: a
Out[10]: [1,2,3,4]

In [11]: b
Out[11]: [1,2,3]

……进一步理解拷贝

In [2]: a = [1,2,3]

In [3]: b = [4,5,6]

In [4]: c = [a,b]

In [5]: d = c

In [6]: id(c)
Out[6]: 140558307928200

In [7]: id(d)
Out[7]: 140558307928200

In [8]: e = copy.deepcopy(c)
……………………………………………………………………
In [9]: import copy
copy      copyreg
In [9]: import copy

In[10]:  e = copy.deepcopy(c)

In[11]: id(e)
Out[11]: 140558286377288

In [13]: a
Out[13]: [1,2,3,4]

In[14]: b
Out[14]: [4,5,6]

In [15]: c
Out[15]: [[1,2,3,4],[4,5,6]]

In [16]: e
Out[16]: [[1,2,3],[4,5,6]]

In [17]: d
Out[17]:[[1,2,3,4],[4,5,6]]

相关文章

  • Python高级第二周

    1,浅拷贝^浅拷贝是对一个对象的顶层拷贝^通俗的理解就是:拷贝了引用,并没有拷贝内容 2,深拷贝^深拷贝是对于一个...

  • python高级第二周

    一、私有化 xx :公开属性 _xx :模块内可以访问的属性这个的作用是该属性只能在当前模块中使用,出了模块及不能...

  • python-高级第二周

    单例模式 异常 模块中的all pygame

  • Python--高级第二周

    单例模式 模块中的all pygame

  • 2018-03-10

    Python第二周学习总结 导读:这是python学习的第二周,在第二周,学习了大量的python基础,其中有字符...

  • python3和python2共存

    第一步 先去python官网下载python2和python3的安装包并将他们安装 第二步 去我的电脑-属性-高级...

  • Python路径配置

    Python.exe 在 高级系统设置 > 高级 > 环境变量 > 系统变量 > Path 中 添加Python安...

  • Python网络爬虫与信息提取入门<6>

    Part 20 第二周内容导学 我们继续学习python网络爬虫与信息提取课程。上一周我们讲解了python的re...

  • Python 第二周

    列表 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型...

  • Python高级第三周

    1,输入三个整数x,y,z,请把这三个数由小到大输出。 2,输入9*9乘法口诀表 3,用计算机实现一个随机1-10...

网友评论

      本文标题:Python高级第二周

      本文链接:https://www.haomeiwen.com/subject/plhtiftx.html