亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么key不能用包含list的tuple?

教程上說key必須用不可變元素,所以不能用list,可用整數浮點字符串和tuple等

但我用了tuple嵌套list就不行了,即使tuple里有list,但tuple本身不還是不可變元素嗎?

以下是我自己在電腦上試一試的代碼

d= {

? ? ('A', ['X']): 78

}

print d

結果報錯了

TyoeError:unhashable type: 'list'

正在回答

5 回答

tuple 的不變指的是 tuple的每個元素,指向永遠不變

當使用 list 作為 tuple 的元素 這個 tuple 實際上已經是一個可變的 tuple 了 key要求從指向到內容都必須不可變

2 回復 有任何疑惑可以回復我~
#1

慕慕2064174 提問者

謝謝!
2017-09-05 回復 有任何疑惑可以回復我~

tuple只是指向不變,指向一對象,就不能指向其他的對象了

0 回復 有任何疑惑可以回復我~

tuple所謂的“不變”是說,Tuple的每個元素,指向永遠不變,即指向一個對象后,就不能再指向其他對象了。如果要讓tuple作為key,就要創建一個內容也不便的tuple,即tuple的每一個元素本身也不能變。

0 回復 有任何疑惑可以回復我~

回答有錯誤,抱歉

0 回復 有任何疑惑可以回復我~

tuple不是不可變元素,你還是可以對它進行add和remove的改變

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758383    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

為什么key不能用包含list的tuple?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號