查找字典键的总和的Python程序

查找字典键的总和的Python程序

在本文中,我们将学习一个Python程序,用于查找字典键的总和。

使用的方法

以下是完成这个任务的各种方法-

  • 使用for循环

  • 使用dict.keys()和sum()函数

  • 使用reduce()函数

  • 使用items()函数

例子

假设我们已经输入了一个包含一些随机键值对的字典。现在,我们将使用上述方法查找输入字典的所有键的总和。

输入

inputDict = {4: 10, 1: 30, 10: 50, 2: 70, 8: 90}

输出

输入字典的键的总和:25

在上面的例子中,输入字典的键的总和为 4+1+10+2+8 = 25。

方法1:使用for循环

算法(步骤)

下面是执行所需任务的算法/步骤-

  • 创建一个变量来存储输入字典。

  • 打印输入字典。

  • 为用于存储输入字典键和的结果的变量keysSum初始化值为0。

  • 使用for循环遍历输入字典的键。

  • 使用加号运算符将当前键添加到keysSum变量中。

  • 打印输入字典的键的总和的结果。

例子

下面的程序使用for循环返回输入字典的所有键的和 –

# 输入字典
inputDict = {4: 10, 1: 30, 10: 50, 2: 70, 8: 90}

# 打印输入字典
print("输入字典:", inputDict)

# 存储输入字典的键的和
keysSum = 0

# 遍历输入字典的键
for k in inputDict:

   # 将当前键添加到keysSum变量中
   keysSum += k

# 打印输入字典键的总和
print("输入字典的键的总和:", keysSum)

输出

在执行上面的程序时,将生成以下输出-

输入字典:{4: 10, 1: 30, 10: 50, 2: 70, 8: 90}
输入字典的键的总和:25

方法2:使用dict.keys()和sum()函数

dict.keys()函数 - 提供一个视图对象,它按插入顺序显示字典中所有键的列表

算法(步骤)

下面是执行所需任务的算法/步骤-

  • 使用dict.keys()函数获取输入字典的键并使用list()函数(返回一个可迭代对象的列表)将其转换为列表。

  • 使用sum()函数获得字典键的总和(返回一个可迭代对象中所有项的总和)。

  • 打印输入字典中所有键的总和的结果。

例子

下面的程序使用dict.keys()和sum()函数返回输入字典的所有键的和 –

# 输入字典
inputDict = {4: 10, 1: 30, 10: 50, 2: 70, 8: 90}
print("输入字典:", inputDict)

# 获取输入字典的键并将其转换为列表

# 然后获得字典键的总和
keysSum = sum(list(inputDict.keys()))
print("输入字典中所有键的总和:", keysSum)

输出

执行上面的程序时,将生成以下输出-

输入字典:{4: 10,1: 30,10: 50,2: 70,8: 90}
输入字典键的总和:25

方法三:使用reduce()函数

reduce()函数

在Python中,reduce()函数遍历列表或其他可迭代数据类型中的每个项目,返回单个值。它在functools库中。这比循环更有效率。

语法

reduce(function, iterable)

Lambda函数

Lambda Function(λ函数)通常称为匿名函数,与普通Python函数相同,除了可以不 用名字定义 。def关键字用于定义正常函数,而lambda关键字用于定义匿名函数。它们只能用一行表达式表示。与普通函数一样,它们可以接受多个参数。

语法

lambda arguments: expression

算法(步骤)

要执行所需的任务,请按照以下算法/步骤执行 –

  • 使用import关键字从functools模块导入reduce函数。

  • 使用lambda函数添加连续的字典键并减小大小以生成单个元素(所有键的总和)。

  • 打印输入字典的所有键的和的结果。

示例

以下程序返回使用reduce()函数计算输入字典所有键的和 –

#从functools模块导入reduce函数
from functools import reduce
inputDict = {4: 10, 1: 30, 10: 50, 2: 70, 8: 90}
print("输入字典:", inputDict)

# 使用reduce()函数将键相加并将其合并为单个数字(总和)
keysSum = reduce(lambda p, q: p + q, inputDict)
print("输入字典键的总和:", keysSum)

输出

执行以上程序后,将生成以下输出 –

输入字典:{4: 10, 1: 30, 10: 50, 2: 70, 8: 90}
输入字典键的总和:25

方法四:使用items()函数

使用 dictionary.items() 函数以for循环遍历字典中的元组。

items() 函数返回一个视图对象,即它包含字典中的键值对,作为元组列表。

示例

以下程序使用items()函数和for循环返回输入字典所有键的和 –

inputDict = {4: 10, 1: 30, 10: 50, 2: 70, 8: 90}
print("输入字典:", inputDict)

# 存储输入字典键的总和
keysSum = 0

# 遍历输入字典的键和值
for key, value in inputDict.items():

   # 将当前键添加到keysSum变量中
   keysSum += key
print("输入字典键的总和:", keysSum)

输出

执行以上程序后,将生成以下输出 –

输入字典:{4: 10, 1: 30, 10: 50, 2: 70, 8:90}
输入字典键的总和:25

结论

在本文中,我们学习了4种不同的计算字典总键和的方法。我们还学习了如何使用lambda函数和reduce为可迭代项添加条件。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程