57 - 淺拷貝(copy)和深拷貝(deepcopy)

請描述一下淺拷貝(copy)和深拷貝(deepcopy)的區別,請用代碼舉例說明如何使用copy和deepcopy

'''
copy: 只複製深層對象的引用
deepcopy: 複製深層對象的本身
'''
import copy
a = [1, 2, 3, 4, ['a', 'b']]

b = copy.copy(a) # 淺拷貝
c = copy.deepcopy(a) # 深拷貝
print(b)
print(c)
[1, 2, 3, 4, ['a', 'b']]
[1, 2, 3, 4, ['a', 'b']]
a.append(5)
print(a)
print(b)
print(c)
[1, 2, 3, 4, ['a', 'b'], 5]
[1, 2, 3, 4, ['a', 'b']]
[1, 2, 3, 4, ['a', 'b']]
a[4][0] = 'x'
print(a)
print(b)
print(c)
[1, 2, 3, 4, ['x', 'b'], 5]
[1, 2, 3, 4, ['x', 'b']]
[1, 2, 3, 4, ['a', 'b']]

58 - 編寫一個生產器,將一個二維列表轉換爲一維列表

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