首先我們看看看b的情況,b實際上和a指向的是同乙個值,就好比人的大名和小名,只是叫法不同,但還是同乙個人
[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-zmqgylvh-1593869479531)(
接下來再看看c的情況,c的情況和a.copy()的情況是一樣的,都是我們所謂的淺拷貝(淺複製),淺拷貝只會拷貝父物件,不會拷貝子物件,通俗的說就是只會拷貝到第二層
若父物件發生變化,c不會變化,因為它已經複製的所有父物件,假如子物件發生變化則c會變,比如c[4]和a[4]實際都是乙個變數list,他們都指向子物件,若子物件發生變化,他們必然都變化,比如變成[「a」,「d」],那它們指向的值也就變成了a、d。
再看看d的情況,這就是我們所說的深複製,不管a進行什麼操作,都不會改變d了,他們已經指向不同的值(這裡是指在記憶體中儲存的位置不同了)。
總結:b=a,只是換了乙個名字,a怎麼變b就怎麼變,
c是淺複製,只複製了a的部分值,仍然共用某些值,所以在對a的子物件進行操作時會改變c
d是深複製,完全複製了a的所有值,已經完全與a無關,對a的任何操作都不會影響d
python常見問題
1.讓指令碼像普通程式一樣執行 先在指令碼的首行加上 usr bin env python,然後 chmod a x hello.py,之後就能這樣執行 了 hello.py,如果不行的話,這樣試試 hello.py 也可以去掉.py副檔名,讓它看起來更像個普通的程式.2.python類的靜態屬性和...
python常見問題
第乙個問題 js加密如何突破 1 熟練掌握chrome的開發者工具的各個功能,elements,network,source 2 認真觀察,善於思考。network檢視載入流程,找可疑的xhr請求,設定xhr斷點,通過call stack 回溯js執行過程,邊回溯邊檢視上下文 能讀懂js,知道js的...
python常見問題
1 安裝檔案 按預設路徑安裝 2 python環境變數的配置 3 命令列驗證 如圖 即為安裝成功 4 setuptools python的增強工具 命令列工具cd切換到setuptools的目錄,找到setup.py,然後輸入python setup.py install,執行即可 如圖即安裝成功 ...