手机也能上课
1/2
"JavaScript" 消失了?
示例:
some_dict = {}
some_dict[5.5] = "Ruby"
some_dict[5.0] = "JavaScript"
some_dict[5] = "Python"
输出:
>>> some_dict[5.5] "Ruby" >>> some_dict[5.0] "Python" >>> some_dict[5] "Python"
"Python" 消除了 "JavaScript" 的存在?
说明:
- Python 字典通过检查键值是否相等和比较哈希值来确定两个键是否相同.
- 具有相同值的不可变对象在Python中始终具有相同的哈希值.
>>> 5 == 5.0 True >>> hash(5) == hash(5.0) True
注意: 具有不同值的对象也可能具有相同的哈希值(哈希冲突).
当执行 some_dict[5] = "Python" 语句时, 因为Python将 5 和 5.0 识别为 some_dict 的同一个键,
所以已有值 "JavaScript" 就被 "Python" 覆盖了.