python中的深浅拷贝
1.??? 淺拷貝??copy.copy
淺拷貝是對于?個對象的頂層拷貝 通俗的理解是:拷貝了引?,并沒有拷貝內(nèi)容
淺拷貝只復(fù)制第一層數(shù)據(jù),更深層的引用不管。
|
| ? |
2.??? 深拷貝???copy.deepcopy
深拷貝是對于?個對象所有層次的拷貝(遞歸)
?
、
?
3.??? 注意點淺拷貝對不可變類型和可變類型的copy不同
對于不可變量類型、不可變量(元組)淺拷貝與深拷貝是一樣
| In??? [88]:??? a??? =??? [11,22,33] |
In??? [89]:??? b???=??? copy.copy(a)
In??? [90]:??? id(a)
Out[90]:??? 59275144
In??? [91]:??? id(b)
Out[91]:??? 59525600
In??? [92]:??? a.append(44)
In??? [93]:??? a
Out[93]:??? [11,??? 22,??? 33,??? 44]
| In??? [94]:??? b Out[94]:??? [11,??? 22,??? 33] In??? [95]: In??? [95]: In??? [95]:??? a??? =??? (11,22,33) In??? [96]:??? b??? =??? copy.copy(a) In??? [97]:??? id(a) Out[97]:??? 58890680 In??? [98]:??? id(b) Out[98]:??? 58890680 |
4.??? 拷貝的其他?式
| ? | 1.分?表達(dá)式可以賦值?個序列 |
?
2.字典的copy?法可以拷貝?個字典
d??? =???dict(name="zhangsan",???age=27)
co??? =???d.copy()
?
3.有些內(nèi)置函數(shù)可以?成拷貝(list)
4.copy模塊中的copy函數(shù)
import??? copy
總結(jié)
以上是生活随笔為你收集整理的python中的深浅拷贝的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 整理与总结Python关于对文件的操作
- 下一篇: 2.Redis数据操作