摘要:起因注以下操作使用的版本為今天在寫基數(shù)排序的時(shí)候,由于需要?jiǎng)?chuàng)建一個(gè)的的,所以我使用了如下方法創(chuàng)建隨后,我在往桶里面存放數(shù)據(jù)的時(shí)候結(jié)果顯示結(jié)果不符合我的預(yù)期,于是用查看對(duì)象的引用后發(fā)現(xiàn)該里面的果然都是同一個(gè)解決辦法隨后改用如下方法創(chuàng)建并存放
0x00 起因
注: 以下操作使用的Python版本為:Python 3.7.3
今天在寫基數(shù)排序的時(shí)候,由于需要?jiǎng)?chuàng)建一個(gè)0-9的bucket的list,所以我使用了如下方法創(chuàng)建:
bucket = [[]] * 10
隨后,我在往桶里面存放數(shù)據(jù)的時(shí)候:
bucket[3].append(3)
結(jié)果顯示:
結(jié)果不符合我的預(yù)期,于是用id查看對(duì)象的引用后:
發(fā)現(xiàn)該list里面的list果然都是同一個(gè)!
隨后改用如下方法創(chuàng)建,并存放數(shù)據(jù):
bucket = [ [] for x in range(10)] bucket[3].append(3)
得到的結(jié)果就符合預(yù)期了,可以看到對(duì)象的引用不一樣
0x02 小結(jié)查看官方文檔,原來(lái)對(duì)于mul操作符有說(shuō)明,如下圖所示
使用"*"操作符是反饋 b個(gè)數(shù)的a,在同一個(gè)list中的所以list的引用都是一樣了
而使用[ [] for x in range(10) ]則相當(dāng)于使用循環(huán):
bucket = [] for x in range(10): bucket.append([])
自然bucket中的每個(gè)list都是不同的對(duì)象
得出的結(jié)論:我們?cè)谂縿?chuàng)建引用對(duì)象時(shí),不要使用Multi operator!?。?/p>
0x03 References
Python multi operator
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/43833.html
摘要:下文統(tǒng)一稱為數(shù)組是存儲(chǔ)單一數(shù)據(jù)類型的多維數(shù)組同語(yǔ)言數(shù)組直接保存數(shù)值而則是能夠?qū)?shù)組進(jìn)行處理的函數(shù)。動(dòng)態(tài)數(shù)據(jù)類型與的數(shù)組和的這些不可變數(shù)據(jù)類型的適用場(chǎng)景等可變數(shù)據(jù)類型適用于需要不斷對(duì)原始數(shù)據(jù)進(jìn)行修改的場(chǎng)景。 showImg(https://segmentfault.com/img/remote/1460000018925396);Numpy,是python中的一個(gè)矩陣計(jì)算包,功能類似ma...
小編寫這篇文章的主要目的,主要是給大家進(jìn)行介紹,關(guān)于NumPy與Python內(nèi)置列表計(jì)算標(biāo)準(zhǔn)差區(qū)別的相關(guān)介紹,希望可以給各位讀者帶來(lái)幫助?! ?什么是Numpy NumPy,是NumericalPython的通稱,用以性能卓越計(jì)算機(jī)的應(yīng)用和數(shù)據(jù)統(tǒng)計(jì)分析的前提包,像數(shù)理科學(xué)專用工具(pandas)和架構(gòu)(Scikit-learn)中都采用上了NumPy這個(gè)包。 NumPy中的基本數(shù)據(jù)結(jié)構(gòu)是n...
摘要:代碼實(shí)現(xiàn)在控制臺(tái)打印總結(jié)本篇文章帶大家搭好環(huán)境,并體驗(yàn)了控制臺(tái)打印。輸出結(jié)果總結(jié)熟練掌握取余和整除運(yùn)算,大有作用。終止本次循環(huán),繼續(xù)執(zhí)行下一次循環(huán)。 ?本文收錄...
摘要:語(yǔ)法速覽與機(jī)器學(xué)習(xí)開(kāi)發(fā)環(huán)境搭建從屬于筆者的程序猿的數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)實(shí)戰(zhàn)手冊(cè),如果希望了解更多關(guān)于數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)知識(shí)體系結(jié)構(gòu),推薦閱讀我的技術(shù)體系結(jié)構(gòu)圖面向程序猿的數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)知識(shí)體系及資料合集。 Python語(yǔ)法速覽與機(jī)器學(xué)習(xí)開(kāi)發(fā)環(huán)境搭建從屬于筆者的程序猿的數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)實(shí)戰(zhàn)手冊(cè),如果希望了解更多關(guān)于數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)知識(shí)體系結(jié)構(gòu),推薦閱讀2016:我的技術(shù)體系結(jié)構(gòu)圖:...
閱讀 2057·2021-11-23 10:03
閱讀 4755·2021-11-22 09:34
閱讀 2580·2021-10-08 10:05
閱讀 2308·2019-08-30 15:53
閱讀 1754·2019-08-30 13:56
閱讀 1217·2019-08-29 16:52
閱讀 1196·2019-08-26 13:31
閱讀 3403·2019-08-26 11:45