回答
從字典的角度來看,關於它的多維度並沒有單一的東西。字典不知道你正在將密鑰解釋爲描述一個n-空間。
例如,你可以巧妙地將你的矢量打包成一個看起來不那麼神奇的字符串,更難以正確使用,但功能相當。就解釋者而言,Python字符串仍然是另一個不可變序列。
沒有負面影響。
某些任務可能效率低於替代實施。例如,如果您使用(x, y, z)
座標作爲關鍵點,則在某個z
處查找所有點相對於真實的多維商店將耗費大量時間。但有時候清晰易用的執行和閱讀王牌高效存儲。
隨着您一直保存設置主鍵'(x,y,z)'鍵控字典,您可以設計更多的索引方案,以根據需要加快執行其他任務。 ;) –
唯一的缺點是性能。更大的密鑰意味着更長的時間散列。
簡而言之,python字典中唯一的關鍵要求是它們是不可變的且可哈希的。對於元組(這是不可變的),這意味着你只需要組合子對象的散列(它們本身必須是不可變和可散列的)。你也可以使用一個冷凍套件作爲關鍵。您不能使用列表或字符串或集作爲鍵。
我嘗試了一個快速和骯髒的基準比較詞典插入和查找與3元組整數與普通整數鍵。元組插入需要多花費13%的時間,查找時間多16%。這不包括自己創建元組鍵的時間 - 我預先爲測試構建了一個鍵列表。所以它有所作爲,但不是一個巨大的。 –
- 1. 在python中使用元組作爲字典中的字典鍵
- 2. 在Python中使用元組作爲字典鍵
- 3. 使用元組作爲字典鍵
- 4. 從元組創建字典,用Python中的元組變量名作爲鍵
- 5. Python字典鍵作爲一組數字
- 6. 的Python:使用* ARGS作爲字典鍵
- 7. YAML和元組作爲字典鍵
- 8. Python字典鍵缺失
- 9. 的Python 3.X - 映射字典,多個元組作爲鍵
- 10. Python:將元組作爲鍵的格式化字典
- 11. 指定和修改元組作爲Python的字典鍵值
- 12. 在python中使用dict鍵作爲不同字典中的值
- 13. 在Swift中,我可以使用元組作爲字典中的鍵嗎?
- 14. 以元組爲關鍵字的字典
- 15. 元組列表,第一個元組作爲鍵,按鍵分組到字典中
- 16. 使用數組作爲javascript中的字典的關鍵字
- 17. 使用Timespan作爲字典中的鍵?
- 18. 使用kwargs作爲字典中的鍵
- 19. Python - 在字典中使用numpy數組作爲鍵的替代方法
- 20. 在python中使用類作爲字典鍵可以嗎?
- 21. 元組(或數組)作爲字典鍵在C#
- 22. 元組作爲字典值
- 23. 使用字典作爲其他字典中的關鍵字
- 24. Python中的元組鍵在字典中無法取得
- 25. 將元組作爲值追加到字典中現有的鍵
- 26. 變量作爲鍵的Python字典
- 27. Python變量作爲字典的鍵
- 28. 使用對象作爲鍵的奇怪Python字典行爲
- 29. 使用字符串作爲字典鍵?
- 30. 使用元組作爲scala中的鍵
生活確實很棒:) –
@SimeonVisser無論何時,我有一個看似非常具有挑戰性的問題,它突然發現,這是神奇的解決方案。 – jab