Python 选择键求和2024 年 8 月 29 日 | 阅读 3 分钟 在使用 Python 字典时,我们可能会遇到需要从字典中获取选择性键值的和的问题。这个问题可能出现在 Web 开发领域,下面让我们看看解决该问题的几种方法。 方法 - 1:使用列表推导式 + get() + sum()在此方法中,我们使用 **get()** 方法访问值,并通过列表推导式遍历字典。我们使用 **sum()** 进行求和。让我们通过以下示例来理解。 示例 - 输出 The original dictionary : {'javatpoint': 1, 'is': 2, 'best': 3, 'for': 4, 'Learning': 5} 9 The summation of Selective keys : 9 方法 - 2:使用 itemgetter() + sum()此函数专门用于通过一系列键作为输入来检索字典中的值。调用该函数后,它会以元组的形式返回相应的值,然后可以使用 sum() 等内置函数对其进行进一步处理(例如求和)。让我们通过以下示例来理解。 示例 - 输出 The original dictionary : {'javatpoint': 5, 'is': 12, 'best': 30, 'for': 24, 'Learning': 15} The summation of Selective keys : 50 时间复杂度 - 如果有 N 个键,则时间复杂度为 O(N)。 辅助空间: O(1),因为空间复杂度与输入的大小无关,是恒定的。 方法 - 3:使用 for 循环让我们理解下面的例子。 示例 - 输出 The original dictionary : {'javatpoint': 11, 'is': 20, 'best': 13, 'for': 40, 'Learning': 50} The summation of Selective keys : 74 时间复杂度 - 该算法的时间复杂度为 0(N)。 辅助空间 - 该算法的辅助空间复杂度为 O(k),其中 k 是 key_list 中的键数。 方法 - 6:使用递归方法下面的函数接受一个字典 d 和一个键列表,并返回键列表中键对应的值的和。 如果键列表的长度为 1,代码将检索字典中与该键关联的值并返回。否则,代码将检索列表中第一个键关联的值,并递归地使用剩余的键和相应的嵌套字典调用自身以获得最终值。 此递归过程将持续进行,直到键列表的长度减少到 1,此时将返回最终值。根据字典的结构和所用键的性质,这是一种从字典中检索嵌套值的有效方法。 示例 - 输出 The summation of Selective keys: 94 时间复杂度 - 该算法的时间复杂度为 0(N)。 |
乒乓球游戏是街机游戏中最著名的游戏之一,与乒乓球非常相似。这个游戏的规则很简单:有两个玩家。双方都控制着自己一方的球拍。他们可以在垂直方向上移动球拍,从...
阅读 6 分钟
在本教程中,我们将讨论 Python 中未找到模块错误以及如何处理它。ModuleNotFoundError Python 开发人员经常遇到“ModuleNotFoundError No module named Python”问题。当您尝试将模块导入到代码中时,Python 解释器会遇到此错误,因为...
阅读 3 分钟
在 Python 中,使用广度优先和深度优先搜索技术来搜索树或图。这两者都是每个新手 Python 程序员必须掌握的最重要的主题。我们将探讨 Python 中的广度优先搜索到底是什么,它的算法是如何工作的,如何...
阅读 6 分钟
在本教程中,我们将了解如何在列表中创建字典,以及可以执行哪些操作。因此,让我们从在列表中创建字典开始。请看下面的程序,#在列表中初始化字典 list_val=[{'English':31101,'Hindi':31102,'Mathematics':31103,'Physics':31104,'Chemistry':31105}] #显示列表 print("字典...")
阅读 3 分钟
在本教程中,我们将学习李算法,该算法用于解决迷宫路由问题。我们将使用 Python 编程语言实现该算法。迷宫路由问题是最有趣和最常问的编程问题之一。李算法是其中之一...
7 分钟阅读
Python 提供了多种比较两个列表的方法。比较是检查列表的数据项是否与另一个列表的数据项相同或不同的过程。list1 - [11, 12, 13, 14, 15] list2 - [11, 12, 13, 14, 15] 输出 -...
阅读 4 分钟
创建一个Python程序,给定一个字符串及其子字符串,找到该子字符串的第n次出现。让我们讨论几种完成任务的方法。使用正则表达式查找字符串中子字符串的第N次出现。在这里,我们使用正则表达式re.finditer来定位...
阅读 2 分钟
好的卷积网络是庞大的机器,拥有许多隐藏层和数百万个参数。“隐藏层越多,网络越好”实在是一个糟糕的格言。一些著名的网络包括 ResNet、AlexNet、VGG、Inception 等。为什么这些网络如此有效?如何……
阅读 10 分钟
? CSV 文件代表逗号分隔值文件。它是一种纯文本文件,信息以表格形式组织。它只能包含实际的文本数据。文本数据不需要用逗号 (,) 分隔....
阅读 2 分钟
YouTube 是全球最大的视频分享平台,人们可以在其中上传和观看不同类别的视频。它已成为内容创作者与世界分享知识、技能和创造力的热门平台。随着内容创作者和观众数量的不断增加...
阅读 6 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India