第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

python中的自引用列表?

python中的自引用列表?

SMILET 2021-03-31 22:10:57
在分析python列表時,當(dāng)我看到其他編程語言無法做到的事情時,我感到很驚訝。可以說我有一個名為my_listmy_list = [1,2,3,4,5,6,7,8,9,10] 接下來,當(dāng)我像my_list[9] = my_list  #I didn't seen such things possible in C/C++而當(dāng)我打印的my_list,my_list[9]并且my_list[9][9],所有這些給出了相同的結(jié)果。my_list[1, 2, 3, 4, 5, 6, 7, 8, 9, [...]]my_list[9][1, 2, 3, 4, 5, 6, 7, 8, 9, [...]]my_list[9][9][1, 2, 3, 4, 5, 6, 7, 8, 9, [...]]我的理解是,my_list[9]是指同一個列表稱為my_list和[...]手段自我指涉列表即列表指向同一個列表,當(dāng)你按照type(my_list[9])它給我type的list。[1, 2, 3, 4, 5, 6, 7, 8, 9, [...]]                              |             Does it like self referential struct pointer concept of C ?在上面的my_list示例中,我只是添加了簡單的測試運(yùn)行。我想知道類似的事情如何my_list[9] = my_list使python代碼性能更好。my_list[9] = my_list在python中使之成為可能的背后的實(shí)際意圖是什么?任何幫助將不勝感激。
查看完整描述

2 回答

?
慕雪6442864

TA貢獻(xiàn)1812條經(jīng)驗(yàn) 獲得超5個贊

可能是因?yàn)榱斜恚ㄅc其他容器一樣)存儲了引用,但為什么不引用自身呢?

__str__/__repr__功能已經(jīng)得到保護(hù),免受會造成死循環(huán),并顯示一個省略號代替(...)。

為什么有可能呢?因?yàn)檫@不是不可能的。如果Python要防止這種情況發(fā)生,則意味著每次在列表中添加對象時都要檢查自引用。這可能是用于維護(hù)參考高速緩存的額外O(n)存儲開銷,也可能是用于執(zhí)行參考搜索的O(n)時間開銷。


查看完整回答
反對 回復(fù) 2021-04-09
?
精慕HU

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個贊

python中的列表除了引用對象(如指針)外不包含任何內(nèi)容。他們可以引用包括自己在內(nèi)的任何對象。


查看完整回答
反對 回復(fù) 2021-04-09
  • 2 回答
  • 0 關(guān)注
  • 178 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號