Python中的字典是否具有单个repr值?

发布于 2021-01-29 16:37:56

在此问题中,建议在字典上调用repr是将其存储在另一个字典中的好方法。无论密钥如何排序,这都将取决于repr是否相同。是这样吗

PS。解决原始问题的最佳方法是使用Frozenset

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

    不,键添加到字典的顺序可能会影响内部数据结构。当两个项目具有相同的哈希值并以相同的桶结尾时,则将它们添加到字典的顺序很重要。

    >>> (1).__hash__()
    1
    >>> (1 << 32).__hash__()
    1
    >>> repr({1: 'one', 1 << 32: 'not one'})
    "{1: 'one', 4294967296L: 'not one'}"
    >>> repr({1 << 32: 'not one', 1: 'one'})
    "{4294967296L: 'not one', 1: 'one'}"
    


知识点
面圈网VIP题库

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

去下载看看