Python中字典的key为什么不可变?字典键不能重复的原因是什么

python之中的字典数据类型因为其键值对保存数据的格式而被当做和json进行交互的对象,那么在使用字典时,字典中的键是不可变以及不能重复的 。这一篇文章要来介绍的内容就是python之中的字典key为什么不可变,以及键为什么不能重复,往下看看吧 。

Python中字典的key为什么不可变?字典键不能重复的原因是什么

文章插图
【Python中字典的key为什么不可变?字典键不能重复的原因是什么】1.字典中的键不能重复和不可变的原因实际上都是只有一个,那就是字典保存数据是键值对格式 。唯一的键对应着一个值,当字典键被改变的时候就无法通过键去找到值了 。python也没给字典提供更改键的方法,只能够将键的值给改变或者是将整个键值对删除掉 。
2.另一个原因就是字典之中通过键来找到对应值的时候,实际上是通过键的哈希值得到对应的键再来找到值的 。而哈希值是一段数据唯一且极其紧凑的数值表示形式 。如果散列一段 明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值 。
所以当字典键为可变类型的时候,它就无法作为字典的键值了,而字典之中的键也只能用数字、元组和字符串来表示 。
3.字典键不能重复也是因为它的特性,一一对应,键值映射 。字典数据类型是python中唯一的一个映射类型,它的意思就是会通过键映射找到具体的值 。
以上就是关于“Python中字典的key为什么不可变?字典键不能重复的原因是什么”的全部内容了,希望对你有所帮助 。

    推荐阅读