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

分类: 计算机技术
推荐阅读:
将PySide6升级到最新版本 由于PySide6还在不断完善阶段,每隔一段时间我们就需要将PySide6升级到最新版本以使用更完善的功能;不论在Windows、Linux、还是macOS系统下,都只需要运行以下命令即可完成升级:
Linux定时执行命令 在Linux下,可以通过一条命令即可实现在指定时间运行某个命令:
C语言中fopen()函数"w"和"w+"mode参数有什么不同? fopen()是C语言标准库的一部分,参数mode字符串表示文件的访问模式;w和w+模式有略微不同:
C语言isdigit()函数:判断字符是否为数字字符 isdigit()是C语言标准库中的一个函数,用于判断一个字符是否是数字字符(ASCII码为48~57);如果传入的字符参数是一个数字字符(0~9),则返回非0值,否则返回0;
Cargo Error: failed to get `x` as a dependency of package解决方法 默认情况下,Cargo是通过内置的git库来下载依赖的,有时会因为验证原因导致失败;
Python计算圆周率,精确到n位 本文将使用Python计算圆周率,可精确到n位,n值越大精度越高。