字典是Python中用于存储一组对象的数据结构。字典有一组键和值,每个键和值都有一个关联的值。简单来说,我们可以说字典以键值对的形式存储数据。一对花括号"{}"
创建一个没有值的字典。
键在字典中是唯一的,而值可能不是。键是唯一标识符。
什么是字典?
字典是一种类似于列表、元组和集合的数据结构。字典用于存储数据或一组对象。字典以键值对的形式存储数据。简单来说,我们可以说字典以键值对的形式存储数据。一对花括号"{}"
创建一个没有值的字典。我们添加用逗号分隔的键:值。
句法:
dict = { key: value, "key": value, "key": "value" ..... } |
我们来看一个简单的字典例子
1
2
3
4
5
6
7
8
9
10
|
dict = { "name" : "Dhushi" , "age" : 6 , "color" : "white" } for k in dict .keys(): print (f 'key: {k}' ) for v in dict .values(): print (f 'value: {v}' ) for key, value in dict .items(): print (f 'Key: {key} and value: {value}' ) |
- 使用键(名称、年龄、颜色)和值(Dhushi、6、白色)将字典分配给变量 dict
- 首先,使用 for 循环和keys()方法仅打印键 => name、age、color,这将返回字典中存在的所有键
- 其次,使用for循环和values()方法仅打印values=> Dhushi, 6, white,这将返回字典中存在的所有值
- 最后,使用 for 循环和items()方法打印键和值,这将返回字典中存在的所有键和值
在结果中,我们看到首先使用keys()方法打印所有键,然后使用values()方法打印字典的所有值,最后使用items()方法获取键和值。
你可以检查:For Loop with Two Variables in Python
使用max()函数
正如我们通过看到“max”一词所理解的,这意味着最大值。所以在这里,max()函数也 返回具有最高值的项目。让我们看一个如何使用它的示例。
示例1:
1
2
3
|
dict = { "Dhushi" : 6 , "Lee" : 32 , "Pink" : 12 } print ( max ( dict , key = dict .get)) |
- 像我们通常那样将带有键值对的字典分配给变量 dict
max()
在这里,我们使用函数打印具有最大值的键- 使用
max()
key 参数设置为 的函数来dict.get()
查找并返回给定字典中最大值的键
max() 函数的语法
max(iterable, *iterables, key, default) |
dict.get
是一个返回 dict 中相应键的值的函数。当 max
寻找最大值时,它使用 的返回值 key
。当我们传入 时 dict
, max function
它会迭代字典的键。max()
返回可迭代对象中最大的元素。
示例2:
zip()
在此示例中,我们在 max 函数内使用函数。Python 的 zip() 函数定义为 zip(*iterables)。zip() 函数用于聚合或组合多个可迭代对象。
1
2
3
4
|
dict = { "Dhushi" : 6 , "Lee" : 32 , "Pink" : 12 } result = max ( zip ( dict .values(), dict .keys()))[ 1 ] print (result) |
- 将带有键和值的字典分配给 dict 变量
max()
在结果变量中,我们使用函数和zip()
函数存储最大值键- 在这里,在 zip() 函数内部,我们迭代
dict.values()
值和dict.keys()
键,从那里开始,max 进程同时处理键和值,打印 [1] 索引,这意味着这里的键。如果我们输入[0]索引,那么它将打印该值;如果我们不放任何东西,它将同时显示最大值和关键。
在结果中,我们得到键(Lee),因为它在其他键值对中具有最大值(32) 。
示例3:
在此示例中,我们将使用max() 函数内的lambda 函数来查找具有最大值的键。Lambda 是一个匿名函数,可以接受任意数量的参数。
1
2
|
dict = { 'Dhushi' : 6 , 'Lee' : 32 , 'Pink' : 100 } print ( max ( dict , key = lambda k: dict [k])) |
- 将带有键和值的字典分配给 dict 变量
- 在这里,我们使用其中的 max 和 lambda 函数打印最大值键。该函数
key
只是返回应该用于排名的值,并max()
立即返回所需的元素。
结果中,我们得到密钥:Pink,其值为100,因此输出为Pink。
您可以检查:比较两个字典并检查键值对是否相等
结论
keys()
在本文中,我们学习了如何创建字典以及如何使用and方法仅查找键和值values()
。该items()
方法用于显示字典的两个键值。我们使用该max()
函数来查找字典中的最大值。在 max 函数中,我们使用了zip
和lambda
函数来帮助我们找到具有最大值的键。
更多主题可以参考Python的官方文档。