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

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

如何在Python中創建一組集?

如何在Python中創建一組集?

DIEA 2019-11-18 10:44:41
我正在嘗試在Python中設置一組。我不知道該怎么做。從空集開始xx:xx = set([])# Now we have some other set, for exampleelements = set([2,3,4])xx.add(elements)但我明白了TypeError: unhashable type: 'list'要么TypeError: unhashable type: 'set'Python中是否可以有一組集合?我正在處理大量集合,所以我希望不必處理重復的集合(集合A1,A2,....的集合B,如果Ai = Aj,則“將取消”兩個集合)
查看完整描述

3 回答

?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

Python的抱怨是因為內部set對象是可變的,因此不可哈希。解決方案是frozenset用于內部集,以表明您無意修改它們。


查看完整回答
反對 回復 2019-11-18
?
眼眸繁星

TA貢獻1873條經驗 獲得超9個贊

人們已經提到您可以使用Frozenset()做到這一點,所以我將添加一個代碼來實現此目的:


例如,您要從以下列表列表中創建一組集合:


t = [[], [1, 2], [5], [1, 2, 5], [1, 2, 3, 4], [1, 2, 3, 6]]

您可以通過以下方式創建集合:


t1 = set(frozenset(i) for i in t)


查看完整回答
反對 回復 2019-11-18
?
慕神8447489

TA貢獻1780條經驗 獲得超1個贊

所以我有完全相同的問題。我想制作一個可以作為一組集合使用的數據結構。問題在于集合必須包含不可變的對象。因此,您可以做的只是將其作為一組元組。對我來說很好!


A = set()

A.add( (2,3,4) )##adds the element

A.add( (2,3,4) )##does not add the same element

A.add( (2,3,5) )##adds the element, because it is different!


查看完整回答
反對 回復 2019-11-18
  • 3 回答
  • 0 關注
  • 406 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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