使用pickle.dumps哈希可变对象

发布于 2021-01-29 15:03:20

我了解为什么将可变对象放入字典很危险。但是,将所有列表/集合转换为元组/
frozensets是昂贵的;对于许多类型,根本没有容易获得的不可变版本。因此,有时值得直接散列可变对象,并采取适当的预防措施以确保所讨论的对象永远不会被修改。

在开始为可变对象实现非常复杂的自定义哈希函数之前,我想检查一下pickle.dumps用作哈希函数是否存在任何缺点-
无论是在性能,碰撞还是其他方面。

关注者
0
被浏览
64
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    出于类似的原因,不能保证泡菜的输出是规范的,因为决定和设置顺序是不确定的。不要将pickle或pprint或repr用于哈希。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看