今天时间有限,虽然会把字典剩下的几个操作方法讲完,但是没有西游记的内容了,毕竟大战狮驼岭可是西游记中相当经典的部分。
'copy', 'fromkeys', 'get', 'setdefault', 'update'
copy:copy(...)
D.copy() -> a shallow copy of D
copy在Python中用的很多。
程式中的拷贝分为深拷贝和浅拷贝,一般copy是指浅拷贝。
深拷贝是deepcopy。
怎么理解呢?
举个简单的例子:
a获得内存中的一个信息,浅拷贝到b,则是把b也指向这个地址,改变地址中的信息,a和b一起变
如果深拷贝,则相当于在开辟一处内存存入相同的信息,改变a对应的内存信息,b不会改变
copy 需要导入模块
import copy
a = [[1],[2],[3]]
先进行一次浅拷贝b = copy.copy(a) output:b = [[1], [2], [3]]
a[1].append(1) output a = [[1], [2, 1], [3]]
这个时候 b = [[1], [2, 1], [3]],改变了a,b也f发生了变化
初始化一下 a = [[1],[2],[3]]
这次深拷贝 b = copy.deepcopy(a)
a[1].append(1) output a = [[1], [2, 1], [3]]
这个时候 b = [[1], [2], [3]] 发现没有,深拷贝后的b没有因为a而发生改变,因为b对应的是新开辟的内存地址,改变a只是修改了旧内存地址的信息
留一个,你们自己尝试下,多动手最重要
西游记的故事不会到此结束,后面更精彩!!!