我對Python numpy很新穎。我試圖在我的一個函數中使用numpy數組作爲字典中的鍵,然後由Python解釋器告知numpy數組不可散列。我剛剛發現,解決這個問題的一種方法是使用repr()
函數將numpy數組轉換爲字符串,但它看起來非常昂貴。有沒有更好的方法來達到同樣的效果?Python - 在字典中使用numpy數組作爲鍵的替代方法
更新:我可以創建一個新的類來包含numpy數組,這似乎是正確的方式來實現我想要的。只是想知道有沒有更好的方法?
更新2:使用一個類來包含數組中的數據,然後重寫__hash__
函數是可以接受的,但是,我更喜歡@hpaulj提供的解決方案。將array/list
轉換爲tuple
可以更好地滿足我的需求,因爲它不需要額外的課程。
你在做什麼那你想使用一個numpy數組(以任何形式)作爲一個字典鍵? –
您可以使用numpy數組中的數據來創建一個「哈希」,它可以用作字典的關鍵字。 – ZdaR
@JonClements我需要一本詞典來映射一個一維向量到一組點。 – Jiayi