Python基礎系列-copy和deepcopy
版權宣告:如需轉載,請註明轉載地址。 https://blog.csdn.net/oJohnny123/article/details/81980698
#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
Created by liaoyangyang1 on 2018/8/23 下午1:41.
"""
# 簡單來說,就是copy出來的物件cp1,如果demo改了他會跟著改。但是deepcopy 出來的 cp2還是原來的值
import copy
demo2 = demo = [1, 2, [3, 4]] #origin 裡#邊有三個元素:1, 2,[3, 4]
cp1 = copy.copy(demo)
cp2 = copy.deepcopy(demo)
print(id(demo))
print(id(cp1))
print(id(cp2))
print(cp1)
print(cp2)
print(cp1 == cp2)
print(cp1 is cp2 )
print(cp1 is demo )
print(cp2 is demo )
print(demo2 is demo )
print(`=`*100)
#cp1 和 co2 看上去相同,但#已不再是同一個object
#把demo內的子list [3, 4] 改掉了#一個元素,觀察到 cp1 和 #cp2的變化如下所示:
demo2[2][0] = "hi"
demo =[1, 2, [`hi`, 4]]
print(cp1)
print(cp2)
相關文章
- copy& deepcopy pythonPython
- 深、淺拷貝deepcopy()和copy()
- 『現學現忘』Docker基礎 — 38、COPY指令和ADD指令Docker
- IOS基礎:retain,copy,assign及autoreleaseiOSAI
- Java基礎系列-Comparable和ComparatorJava
- Gurobi基礎教程(Python版)-系列教程2Python
- Go基礎系列:常量和變數Go變數
- Go基礎系列:defer、panic和recoverGo
- 【Python基礎】日期和時間Python
- Java基礎系列-equals方法和hashCode方法Java
- Python基礎篇-Python基礎01Python
- Python深淺copyPython
- 小白學python系列-(3)基礎數量型別Python型別
- python基礎之字串和編碼Python字串
- 二、python安裝和基礎使用Python
- Python介紹和基礎運用Python
- python基礎 (3)if 和 while的使用PythonWhile
- Dagger 2 系列(三) -- 基礎篇:@Module 和 @ProvidesIDE
- Dagger 2 系列(四) -- 基礎篇:@Named 和 @Qualifier
- Python基礎入門(8)- Python模組和包Python
- Python基礎筆記01-Python基礎Python筆記
- python基礎中的基礎Python
- Selenium+python 通過 Cookie 和 Token 登入詳解 [無基礎新手必看系列]PythonCookie
- Python 基礎 (-)Python
- Python基礎Python
- python 基礎Python
- Python基礎入門_2基礎語法和變數型別Python變數型別
- Python基礎05 縮排和選擇Python
- python基礎篇-輸入和輸出Python
- Python基礎之:數字字串和列表Python字串
- 零基礎學python_05_數字(整數+浮點數),0基礎python系列不看爆虧!Python
- Java基礎系列—字串Java字串
- Java基礎系列-LambdaJava
- Java基礎系列-OptionalJava
- Java基礎系列-RandomAccessJavarandomMac
- 聊聊promise系列(基礎)Promise
- Java基礎系列-靜態代理和動態代理Java
- Copy of a Copy of a Copy