日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python怎么查看列表_Python 小白,关于对于列表的+=操作不明白,查了半天也不知道怎么查,并且查询无果,请人指点?...

發布時間:2024/10/8 python 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python怎么查看列表_Python 小白,关于对于列表的+=操作不明白,查了半天也不知道怎么查,并且查询无果,请人指点?... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這兩題涉及兩個概念:賦值過程中的淺復制 VS. 深復制

修改自身的操作 VS. 返回新值的操作

x 是個列表,用Python的話說,屬于引用類型,它本身是一個指向底層數據結構的引用,賦值給 y 時,傳遞的是這個引用,因此,y 和 x 等于共享了底層數據結構。我們把這種情況叫淺復制。

比如說,我們改一下 y 的值,x 的值也會受影響。y[0]=2

x

[2,2]

與之對應的是深復制,對于Python中的值類型,比如數值、字符串等,賦值的時候會直接復制一份底層數據,互相之間就不會受影響了。x=1

y=x

y=2

y

2

x

1

除了賦值過程,深復制與淺復制更需要注意的是函數傳參的過程。傳遞一個引用對象作為參數,有可能會在函數運算時改變原對象狀態,導致一些不好排查的bug。想要更詳細的了解,可以搜索相關關鍵詞。

第二個概念是修改自身的操作與返回新對象的操作。

同樣是擴展列表,這兩題結果不一樣,是因為 += 號是修改自身的操作,這個操作等于是在 y 后面新增了兩個元素,上面說過,x 和 y 在底層結構上是同一個,因此 x 就受影響了。

而另一題中,y=y+[3,4] 其實可以看成兩步,第一步是相加,得到一個新的列表 [1,2,3,4] ,第二步是把這個新列表賦值給 y,這個賦值過程,實際上是讓 y 指向了一個新的底層數據結構,和 x 指向的那個就區分開來了。

當然,需要指出的是,+= 其實也不是原子性的操作,不過這和這兩題沒什么關系,屬于比較深入的內容,暫時可以不用關注。

搜索資料的問題,第一步是打開搜索引擎,第二步是輸入關鍵詞。了解一些基本概念之后,就知道該輸入什么關鍵詞了,不用著急。

怎么了解一些基本概念呢?還是推薦看一兩本比較經典的書,所謂磨刀不誤砍柴工。怎么知道哪些書比較經典呢?參考上一段,這里就不推薦了。

祝順利!

總結

以上是生活随笔為你收集整理的python怎么查看列表_Python 小白,关于对于列表的+=操作不明白,查了半天也不知道怎么查,并且查询无果,请人指点?...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。