在Python中,字典(`dict`)是一种存储键值对(`key-value pairs`)的数据结构。键(Key)是字典中的核心组成部分,其含义和特性如下:
1. 唯一标识符
键是字典中每个值的唯一标识符。通过键可以快速查找、访问或修改对应的值(`value`),类似于现实字典中通过“词条”查找“释义”。
2. 快速检索
字典内部通过哈希表(Hash Table)实现,键的哈希值用于快速定位存储位置,因此查找效率极高(平均时间复杂度为O(1))。
1. 不可变性(Immutable)
键必须是不可变类型(如字符串、整数、浮点数、元组等)。
不可变示例:`"name"`、`123`、`(1, 2)`
非法示例:`["list"]`(列表是可变的,不能作为键)。
2. 唯一性
同一字典中,键不能重复。若重复赋值,后一个值会覆盖前一个值:
python
my_dict = {"a": 1, "a": 2}
print(my_dict) 输出: {"a": 2}
python
定义一个字典
person = {
name": "Alice", 键:"name",值:"Alice
age": 30, 键:"age",值:30
(1, 2): "tuple_key" 键可以是元组(不可变)
通过键访问值
print(person["name"]) 输出: Alice
print(person[(1, 2)]) 输出: tuple_key
1. 为什么键必须是不可变的?
不可变性确保键的哈希值在生命周期内不变。若键可变(如列表),其哈希值可能变化,导致字典无*确检索值。
2. 如何判断一个类型能否作为键?
可哈希(Hashable)的类型才能作为键。通过`hash`函数检测:
python
print(hash("hello")) 有效(字符串可哈希)
print(hash([1, 2])) 报错(列表不可哈希)
3. 值可以是任意类型吗?
是的!值可以是任意类型(字符串、列表、甚至另一个字典),与键的类型无关。
字典中的键是用于唯一标识值的不可变对象,提供高效的查找机制。理解键的特性(不可变、唯一性)是正确使用字典的关键。
版权声明: 知妳网保留所有权利,部分内容为网络收集,如有侵权,请联系QQ793061840删除,添加请注明来意。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态