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已被删除。


如需转载,请注明出处,本文地址:https://www.perfcode.com/p/1373.html