Python 实现哈希表
哈希表是一种数据结构,其中数据元素的地址或索引值是从哈希函数生成的。
由于索引值充当数据值的键,因此可以更快地访问数据。 换句话说,哈希表存储键值对,但是键是通过哈希函数生成的。
因此,随着键值本身成为存储数据的数组的索引,数据元素的搜索和插入功能变得更快。
在Python中,Dictionary数据类型就是哈希表的实现。 字典中的键满足以下要求:
- 字典的键是可哈希的,即由哈希函数生成,哈希函数为每个唯一值生成唯一结果。
- 字典中数据元素的顺序不固定。
因此,我们通过使用以下字典数据类型来看到哈希表的实现。
在字典中访问值
要访问字典元素,您可以使用熟悉的方括号和键来获取其值。
dict = {'Name': 'Zara',
'Age': 7,
'Class': 'First'}
print("dict['Name']: ", dict['Name'])
print("dict['Age']: ", dict['Age'])
执行上面的代码时,将打印:
dict['Name']: Zara dict['Age']: 7
更新字典
您可以通过添加新条目或键值对,修改现有条目或删除现有条目来更新字典,如下面的简单示例所示:
dict = {'Name': 'Zara',
'Age': 7,
'Class': 'First'}
dict['Age'] = 8 # 更新已存在的
dict['School'] = "DPS School" #添加新的
print("dict['Age']:",dict['Age'])
print("dict['School']:",dict['School'])
运行上面的代码,将打印:
dict = {'Name': 'Zara',
'Age': 7,
'Class': 'First'}
print("dict['Name']: ", dict['Name'])
print("dict['Age']: ", dict['Age'])
执行上面的代码时,将打印:
dict['Age']: 8 dict['School']: DPS School
删除字典元素
您可以删除单个字典元素,也可以清除字典的全部内容。 您也可以通过单个操作删除整个字典。 要删除整个字典,只需使用del语句:
dict = {'Name': 'Zara',
'Age': 7,
'Class': 'First'}
del dict['Name'] #移除元素
dict.clear() #移除所有元素
del dict #删除字典
print("dict['Age']:",dict['Age'])
print("dict['School']:",dict['School'])
执行上述代码将引发异常;因为dict已被删除。