日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

copy是什么意思?python每日一練之如何copy?

概述今天主要來(lái)看看Python中的淺拷貝和深拷貝內(nèi)容 , 這里用一個(gè)實(shí)例來(lái)說(shuō)明~
需求:將一個(gè)列表的數(shù)據(jù)復(fù)制到另一個(gè)列表中 。
思路:【copy是什么意思?python每日一練之如何copy?】使用列表[:] , 拿不準(zhǔn)可以調(diào)用copy模塊 。
實(shí)現(xiàn)方法:#!/usr/bin/python#將一個(gè)列表的數(shù)據(jù)復(fù)制到另一個(gè)列表中import copya=[1,2,3,4,['a','b']]b=a#賦值c=a[:]#淺拷貝d=copy.copy(a)#淺拷貝e=copy.deepcopy(a)#深拷貝#輸出print('================a改變前================')print('a=',a)print('b=',b)print('c=',c)print('d=',d)print('e=',e)a.append(5)a[4].append('c')#輸出print('================a改變后================')print('a=',a)print('b=',b)print('c=',c)print('d=',d)print('e=',e)

copy是什么意思?python每日一練之如何copy?


輸出:

copy是什么意思?python每日一練之如何copy?


python的復(fù)制 , 深拷貝和淺拷貝的區(qū)別一般有三種方法 , 
alist=[1,2,3,[“a”,”b”]]
1、直接賦值,默認(rèn)淺拷貝傳遞對(duì)象的引用而已,原始列表改變 , 被賦值的b也會(huì)做相同的改變

copy是什么意思?python每日一練之如何copy?


2、copy淺拷貝 , 沒(méi)有拷貝子對(duì)象 , 所以原始數(shù)據(jù)改變 , 子對(duì)象會(huì)改變
在淺拷貝時(shí) , 拷貝出來(lái)的新對(duì)象的地址和原對(duì)象是不一樣的 , 但是新對(duì)象里面的可變?cè)兀ㄈ缌斜恚┑牡刂泛驮瓕?duì)象里的可變?cè)氐牡刂肥窍嗤?nbsp;, 也就是說(shuō)淺拷貝它拷貝的是淺層次的數(shù)據(jù)結(jié)構(gòu)(不可變?cè)兀?nbsp;, 對(duì)象里的可變?cè)刈鳛樯顚哟蔚臄?shù)據(jù)結(jié)構(gòu)并沒(méi)有被拷貝到新地址里面去 , 而是和原對(duì)象里的可變?cè)刂赶蛲粋€(gè)地址 , 所以在新對(duì)象或原對(duì)象里對(duì)這個(gè)可變?cè)刈鲂薷臅r(shí) , 兩個(gè)對(duì)象是同時(shí)改變的.
淺拷貝 , 原對(duì)象的list元素改變的話會(huì)改變當(dāng)前對(duì)象 , 如果當(dāng)前對(duì)象中l(wèi)ist元素改變了 , 也同樣會(huì)影響原對(duì)象 。

copy是什么意思?python每日一練之如何copy?



3、深拷貝 , 包含對(duì)象里面的自對(duì)象的拷貝 , 所以原始對(duì)象的改變不會(huì)造成深拷貝里任何子元素的改變
深拷貝就是完全跟以前就沒(méi)有任何關(guān)系了 , 原來(lái)的對(duì)象怎么改都不會(huì)影響當(dāng)前對(duì)象

copy是什么意思?python每日一練之如何copy?


覺(jué)得有用的朋友多幫忙轉(zhuǎn)發(fā)哦!后面會(huì)分享更多devops和DBA方面的內(nèi)容 , 感興趣的朋友可以關(guān)注下~

copy是什么意思?python每日一練之如何copy?


    推薦閱讀