当前位置: 首页 > 面试题库 >

Python-如何使用同一键合并多个字典?

通奕
2023-03-14
问题内容

我有多个像这样的字典/键值对:

d1 = {key1: x1, key2: y1}  
d2 = {key1: x2, key2: y2}  

我希望结果成为新的字典(如果可能的话,以最有效的方式):

d = {key1: (x1, x2), key2: (y1, y2)}  

实际上,我希望结果d为:

d = {key1: (x1.x1attrib, x2.x2attrib), key2: (y1.y1attrib, y2.y2attrib)}

如果有人告诉我如何获得第一个结果,那么我可以找出其余的结果。


问题答案:

假设所有键始终存在于所有字典中:

ds = [d1, d2]
d = {}
for k in d1.iterkeys():
    d[k] = tuple(d[k] for d in ds)

注意:在Python 3.x中,使用以下代码:

ds = [d1, d2]
d = {}
for k in d1.keys():
  d[k] = tuple(d[k] for d in ds)

并且如果dic包含numpy数组:

ds = [d1, d2]
d = {}
for k in d1.keys():
  d[k] = np.concatenate(list(d[k] for d in ds))


 类似资料:
  • 问题内容: 我整个上午都在搜索,但是大多数合并示例仅基于一个键,而在多个键上却找不到任何东西。 pid = 111,sid = 6,eid = 123的值在x和y中都匹配,然后合并为一条记录。如果它们不匹配,只需将其原样带过来。 我想要的最终结果: 问题答案: 这是从元组中重新锁定:

  • 本文向大家介绍Python如何合并多个字典或映射,包括了Python如何合并多个字典或映射的使用技巧和注意事项,需要的朋友参考一下 问题 现在有多个字典或者映射,你想将它们从逻辑上合并为一个单一的映射后执行某些操作,比如查找值或者检查某些键是否存在。 解决方案 加入你有如下两个字典: 现在假设你必须在两个字典中执行查找操作(比如先从a中找,如果找不到再在b中找)。一个非常简单扼解决方案就是使用co

  • 本文向大家介绍如何用python合并多个excel文件,包括了如何用python合并多个excel文件的使用技巧和注意事项,需要的朋友参考一下 安装模块 1、找到对应的模块  http://www.python-excel.org/ 2、用 pip install 安装 因为使用的是 python3,所以安装的时候采用 pip3。 XlsxWriter 示例 先看看简单的演示: 运行结果如下: 合

  • 问题内容: 我有三个表,, 与下面的数据 页 标签 页面标签 我想在一个查询中获得一个包含SQL每一页的对应标签名的字符串。这是我想要的输出。 SQL可能吗? 我正在使用MySQL。尽管如此,如果可能的话,我希望有一个独立于数据库供应商的解决方案。 问题答案: 塞尔吉奥·德尔阿莫(Sergio del Amo): 但是,我没有没有标签的页面。我想我需要用左外部联接编写查询。 不是一个非常漂亮的查询

  • 问题内容: 我有以下两个玩具字典 我想得到一个唯一的字典,在其中我将第二个字典值堆叠在第一个字典之后,并放在相同的方括号内。 我尝试了以下代码 但是我获得的输出在每个键的列表中有两个列表,即 而我想获得 如何使用一行或两行代码来实现? 问题答案: 您几乎拥有了它,而是使用了附加两个列表的方法:

  • 我有两个这样的等级: 和 我想使用hibernate持久化这两个类。字段messagesOfTypeA、messagesOfTypeB和messagesOfTypeC根据消息中的类型字段对消息对象进行分组。 如何使用XML hibernate映射映射MyClass和Message之间的一对多关系?(我正在使用Hibernate 3.6)