中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python淺復制中對象生存周期實例分析

發布時間:2020-10-07 08:43:06 來源:腳本之家 閱讀:137 作者:grey_csdn 欄目:開發技術

本文實例講述了Python淺復制中對象生存周期。分享給大家供大家參考,具體如下:

Python的淺復制以及深復制我了解的并不多,我不清楚shutil中的copy1和copy2是不是算是淺復制和深復制?這兩個操作,一個是文件屬性重建,還有一個是文件屬性不變。不知道對象的復制是否可以以此類比?

在復制之前,為了能夠觀看一下GC的執行,定義一個特殊的類和對象。測試代碼如下:

class Demo:
    def __del__(self):
       print("Removing{0}".format(id(self)))
x = Demo()
del x

程序執行結果如下:

E:\01_workspace\02_programme_language\03_python\03_OOP\2017\08>pythoncopy1.py
Removing1772226785520

接下來構造淺復制的例子:

>>>obj_list1 = [Demo(),Demo()]
>>>obj_list2 = obj_list1[:]
>>> del obj_list1
>>> del obj_list2
Removing1902510644416
Removing1902510644360

從上面的結果看,第一次del并沒有觸發對象銷毀的方法執行。這是在交互界面中進行調試出現的結果,如果代碼是寫到一個具體的文件中,那么程序執行的結果有可能不同。當所有的語句都寫到同一個文件中的時候,文件中的對象作用域會有輕微的調整。這是值得我們注意的。

另一種常見的淺復制方法:

>>> o1 =o2 = Demo()
>>> del o1
>>> del o2
Removing1902510136568

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python字典操作技巧匯總》、《Python加密解密算法與技巧總結》、《Python編碼操作技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》

希望本文所述對大家Python程序設計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

明溪县| 尖扎县| 姚安县| 大足县| 久治县| 新龙县| 济南市| 吉安县| SHOW| 盐边县| 留坝县| 兴山县| 江城| 喀喇沁旗| 涪陵区| 儋州市| 梁平县| 荣昌县| 巢湖市| 恩平市| 汉川市| 湖南省| 调兵山市| 霍山县| 久治县| 从化市| 阳谷县| 阿瓦提县| 元朗区| 高密市| 肥城市| 嘉义市| 苍山县| 古浪县| 厦门市| 荔波县| 延吉市| 五华县| 饶河县| 嘉祥县| 乐山市|