qfxx第三週2

今天8:29到教室

一個有意思的現象,關於copy的

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2019/7/23 0023 9:43
# @Author  : joker-syc
# @Site    : 
# @File    : test.py
# @Software: PyCharm
import copy
a=[1,2]
b=[a]*3
c=copy.deepcopy(b)
c[0].append(99)
print(c)
print(id(c[0]))
print(id(c[1]))
print(id(b[0]))
#這裏的主要原因是c中的3個a的確經過深拷貝後與b中的a不同,但是c中的3個a卻用的是同一個地址
#如果要杜絕這種情況,就不能用上面的賦值方式

c=[a[:],a[:],a[:]]
c[0].append(99)
print(c)
print(b)
print(id(c[0]))
print(id(c[1]))
print(id(b[0]))

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