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