python的拷貝

1.python的拷貝

Python中的對象之間賦值時是按引用傳遞的,如果需要拷貝對象,需要使用標準庫中的copy模塊。
+ copy.copy 淺拷貝 只拷貝父對象,不會拷貝對象的內部的子對象。
+ copy.deepcopy 深拷貝 拷貝對象及其子對象

# -*- coding:utf-8 -*-
import copy
# 原始對象
a = [1, 2, 3, 4, ['a', 'b']]

# 賦值,傳對象的引用
b = a
# 對象拷貝,淺拷貝
c = copy.copy(a)   
# 對象拷貝,深拷貝
d = copy.deepcopy(a)

# 修改對象a
a.append(5)
# 修改對象a中的['a', 'b']數組對象
a[4].append('c')

print 'a = ', a  
print 'b = ', b  
print 'c = ', c  
print 'd = ', d  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章