栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

矩阵作为字典键

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

矩阵作为字典键

使用可变对象作为字典的键是错误的,因为一旦更改数据,它的哈希就应该改变,但是插入时使用的值将保留。

在我的测试中,Python 3.2.2的numpy引发TypeError:

TypeError: unhashable type: 'matrix'

但是在Python
2.7上,它仍然允许散列,但是当您更改数据时,散列值永远不会改变,因此,它作为字典键非常无用,因为

matrix
添加到字典中的具有相同散列的许多对象都会降低散列表的质量,因此将插入
O(n^2)
而不是
O(1)

也许他们没有删除哈希值以避免破坏Python 2.x上的某些API,但不要依赖它!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/661264.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号