リスト型は入れ子に出来ても、集合型は入れ子に出来ない?
リスト型が入れ子に出来たので、集合型でも試してみたのですが
data = set([9,[8,7],6,6,5])
print(data)
print(type(data))
下記エラーが表示されました
TypeError: unhashable type: 'list'
・ハッシュ化できない?
・リストを集合型のキーとして使用している??
・どういう意味ですか?
追記分。下記理解で合っているでしょうか?
・集合型には、set, frozensetがある
・setは、ミュータブルで可変なので、要素のハッシュ値が確定できない。集合の要素に出来ない、入れ子に出来ない
・frozensetは、イミュータブルなので、要素のハッシュ値が確定できる。集合の要素に出来る、入れ子に出来る
・集合型で入れ子が出来る要件は、入れ子にされる側が不変(要素のハッシュ値が確定できるfrozenset)な場合だけ