为什么Nonehash to -1042159082(我发现它等于Gigabyte中的字节数否定)?
我意识到这并没有真正影响我的代码,但我很好奇.
哈希用于字典键查找,所以我决定尝试:
>>> D = {-1042159082: 'Hello', None: 'Hi'}
>>> D[None]
'Hi'
>>> D[-1042159082]
'Hello'
>>>
Run Code Online (Sandbox Code Playgroud)
我理解这是因为Python看到两个相同的哈希,然后检查类型以查看它是什么.是对的吗?
>>> {False: 'Hello', 0: 'Hi'}
{False: 'Hi'}
>>> {0: 'Hi', False: 'Hello'}
{0: 'Hello'}
Run Code Online (Sandbox Code Playgroud)
这很奇怪.更重要的是保留第一个键,保留第二个键.
这是巫术,还是有人能帮助我理解?
| 归档时间: |
|
| 查看次数: |
321 次 |
| 最近记录: |