国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python中操作符“*”創建數組與循環創建數組的區別

VishKozus / 467人閱讀

摘要:起因注以下操作使用的版本為今天在寫基數排序的時候,由于需要創建一個的的,所以我使用了如下方法創建隨后,我在往桶里面存放數據的時候結果顯示結果不符合我的預期,于是用查看對象的引用后發現該里面的果然都是同一個解決辦法隨后改用如下方法創建并存放

0x00 起因

注: 以下操作使用的Python版本為:Python 3.7.3
今天在寫基數排序的時候,由于需要創建一個0-9的bucket的list,所以我使用了如下方法創建:

bucket = [[]] * 10

隨后,我在往桶里面存放數據的時候:

bucket[3].append(3)

結果顯示:

結果不符合我的預期,于是用id查看對象的引用后:


發現該list里面的list果然都是同一個!

0x01 解決辦法

隨后改用如下方法創建,并存放數據:

bucket = [ [] for x in range(10)]
bucket[3].append(3)

得到的結果就符合預期了,可以看到對象的引用不一樣

0x02 小結

查看官方文檔,原來對于mul操作符有說明,如下圖所示


使用"*"操作符是反饋 b個數的a,在同一個list中的所以list的引用都是一樣了
而使用[ [] for x in range(10) ]則相當于使用循環:

bucket = []
for x in range(10):
    bucket.append([])

自然bucket中的每個list都是不同的對象
得出的結論:我們在批量創建引用對象時,不要使用Multi operator!!!

0x03 References

Python multi operator

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43833.html

相關文章

  • 真假美猴王-Numpy數據Python數組區別聯系

    摘要:下文統一稱為數組是存儲單一數據類型的多維數組同語言數組直接保存數值而則是能夠對數組進行處理的函數。動態數據類型與的數組和的這些不可變數據類型的適用場景等可變數據類型適用于需要不斷對原始數據進行修改的場景。 showImg(https://segmentfault.com/img/remote/1460000018925396);Numpy,是python中的一個矩陣計算包,功能類似ma...

    鄒強 評論0 收藏0
  • NumPyPython內置列表計算標準差區別詳析

      小編寫這篇文章的主要目的,主要是給大家進行介紹,關于NumPy與Python內置列表計算標準差區別的相關介紹,希望可以給各位讀者帶來幫助。  1什么是Numpy  NumPy,是NumericalPython的通稱,用以性能卓越計算機的應用和數據統計分析的前提包,像數理科學專用工具(pandas)和架構(Scikit-learn)中都采用上了NumPy這個包。  NumPy中的基本數據結構是n...

    89542767 評論0 收藏0
  • 《十萬字Java入門練習100例》1-10例——紙上得來終覺淺,絕知此事要躬行

    摘要:代碼實現在控制臺打印總結本篇文章帶大家搭好環境,并體驗了控制臺打印。輸出結果總結熟練掌握取余和整除運算,大有作用。終止本次循環,繼續執行下一次循環。 ?本文收錄...

    keithyau 評論0 收藏0
  • Python語法速覽機器學習開發環境搭建

    摘要:語法速覽與機器學習開發環境搭建從屬于筆者的程序猿的數據科學與機器學習實戰手冊,如果希望了解更多關于數據科學與機器學習知識體系結構,推薦閱讀我的技術體系結構圖面向程序猿的數據科學與機器學習知識體系及資料合集。 Python語法速覽與機器學習開發環境搭建從屬于筆者的程序猿的數據科學與機器學習實戰手冊,如果希望了解更多關于數據科學與機器學習知識體系結構,推薦閱讀2016:我的技術體系結構圖:...

    Simon 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<