码迷,mamicode.com
首页 > 编程语言 > 详细

python3-深浅复制

时间:2016-11-12 20:16:04      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:int   copy   账号   name   列表   person   import   理解   物理地址   

# Auther: Aaron Fan

names = ["aaron", "alex", "james", "meihengfan"]

#复制一份列表

#浅复制 (注意,这只是一个浅复制,只能复制第一层列表里面的东西,如果列表里面还有一层列表,那么那一层的列表只是把物理地址指向过去了,但是并没有复制过来)
#在day2第9个视频,有详细讲这个浅复制的作用,这里不再详细注释

person = ["name", ["saving", 100]]

‘‘‘
浅复制的方法有3种:
p1 = person.copy()
p1 = person[:]
p1 = list(person)
‘‘‘

p1 = person[:]
p2 = person[:]
print(p1)
print(p2)


p1[0] = "alex"
p2[0] = "fengjie"
print(p1)
print(p2)

#注意第二层列别中的值同时变了,这里联合账号来理解浅复制的作用
p1[1][1] = 50
print(p1)
print(p2)


#深复制(这种复制属于完完全全的复制,可以把列表里面的列表也复制过来,而不是仅仅只是指向一个地址过去)
import copy
names2 = copy.deepcopy(names)

python3-深浅复制

标签:int   copy   账号   name   列表   person   import   理解   物理地址   

原文地址:http://www.cnblogs.com/AaronFan/p/6057269.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!