按键合并的两个字典的值的并集

2024-05-25


我有两本词典:

d1 = {'a':('x','y'),'b':('k','l')}
d2 = {'a':('m','n'),'c':('p','r')}

如何合并这两个字典以获得这样的结果:

d3 = {'a':('x','y','m','n'),'b':('k','l'),'c':('p','r')}

当字典的值是简单类型(如 int 或 str)时,这有效:

d3 = dict([(i,a[i]+b[i]) for i in set(a.keys()+b.keys())])

但我不知道如何将列表作为值处理......

注意:我的问题与如何在一个表达式中合并两个Python字典? https://stackoverflow.com/questions/38987/how-can-i-merge-two-python-dictionaries-in-a-single-expression因为我不想更新值而是添加它们


您的问题在变量名称方面有点混乱,但我认为这符合您的要求:

d3 = dict([(i,d1.get(i,())+d2.get(i,())) for i in set(d1.keys()+d2.keys())])
d3
{'a': ('x', 'y', 'm', 'n'), 'b': ('k', 'l'), 'c': ('p', 'r')}

注意,你可以添加(即扩展)lists and tuples with +.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按键合并的两个字典的值的并集 的相关文章

随机推荐

  • BigQuery - 可以查询列数据类型

    是否有一个函数可以让我们查询 BigQuery 中列的数据类型 我想找到这样的东西 WITH basket AS SELECT apple AS fruit 10 AS qty UNION ALL SELECT pear AS fruit
  • 在Matlab图例中使用Latex?

    我的 matlab 不接受我的 Latex 例如 如果我使用legend b 6 rightarrow b 7 它没有向我显示箭头 我该如何解决这个问题 尝试使用 Latex 解释器 例如 legend b 6 rightarrow b 7
  • 如何设置cookie值?

    我正在执行以下操作来设置 cookie 值 HttpCookie mycookie new HttpCookie mycookie mycookie Value value1 Case sensitivity mycookie Expire
  • 我可以在 Perl 中访问动态指定类中的静态方法吗?

    是否可以在 Perl 中动态指定一个类并访问该类中的静态方法 这不起作用 但说明了我想做的事情 use Test Class1 my class Test Class1 class static method 我知道我可以这样做 class
  • 重定向后 HTML5 CORS 请求在 safari 中失败

    我正在使用 jQuery 制作 CORS 请求来完成 SSO 类型系统 用户登录 WordPress 同时使用钩子也登录 Moodle 我遇到的问题是 在 Safari 中 仅限 safari 7 当初始 POST 请求设置为 mudles
  • C++ fill() 与 uninitialized_fill()

    您好 我是初学者 我想知道容器的 fill 和 uninitialized fill 之间的区别 我在谷歌上进行了快速搜索 但没有得到很好的答案 有人可以帮助我吗 fill 将值 使用赋值运算符 分配给已构造的对象 uninitialize
  • VS 2013 给出 操作无法完成。 Razor 视图上的指针无效

    我在我的系统上安装了VS 2015版本 我的计算机上已经安装了 Visual studio 2013 update 4 但现在 每当我尝试在 VS 2013 中打开任何 cshtml razor 视图 时 都会收到以下错误 微软视觉工作室
  • 尝试缓冲区溢出

    我正在尝试使用缓冲区溢出来更改函数的结果 以使用以下代码更改堆栈上的结果 include
  • 如何在 Struts 2 中访问 OGNL 跟踪评估?

    有人告诉我要优化网络应用程序 为此 我使用JProfiler https www ej technologies com products jprofiler overview html 我注意到很大一部分响应时间都花在了表示层上 特别是当
  • C语言中的array、&array、&array[0]有什么区别? [复制]

    这个问题在这里已经有答案了 在学习C语言中的数组和指针时 我很困惑 为什么ch ch ch 0 彼此相等 而sptr sptr sptr 0 却不相等 这是我的源代码 int main void char ch 7 1 2 3 4 5 6
  • 谷歌基准迭代的意义是什么?

    我正在使用 Google Benchmark 来测量某些代码的执行时间 例如 我编写了以下代码来测量其执行时间性能 include
  • 应用内购买导致偶尔崩溃

    我在互联网上搜索了这方面的帮助 但没有结果 我的应用程序已在应用程序商店中上线 少数用户报告应用程序在进行应用内购买后冻结并崩溃 我的游戏中唯一的 IAP 它基本上解锁了完整版本 即使他们重新启动设备并尝试继续 设备也会再次崩溃 我无法重现
  • 启动 Activity 时自动弹出键盘

    我有一个相对简单的问题 我有一个包含很多 EditText 的活动 当我打开活动时 它会自动聚焦到第一个 EditText 并显示虚拟键盘 我怎样才能防止这种情况发生 在 XML 文件的布局标签中使用此属性 android focusabl
  • Angular 2:*ngFor 中的 *ngFor

    下面的场景在 javascript 中非常简单 但在 Angular 中让它工作时遇到了一些问题 我有一个像这样的数组 array a id 0 name random column 1 2 or 3 blockrow 1 2 or 3 使
  • 具有多重继承的不明确基数

    我正在尝试在一个大库中编写一些类的子类 我收到 基础不明确 错误 这是该问题的一个可编译示例 include
  • 类型错误:不可散列的类型:pandas 的“切片”

    我有一个 pandas 数据结构 我这样创建 test inputs pd read csv input test csv delimiter 它的形状 print test inputs shape is this 28000 784 我
  • 简单 – 按顺序对多个 SVG 进行动画处理(如循环 GIF)

    我正在尝试做最基本的SVG动画 我发现的一切都试图教我关键帧和类似的高级东西 我在 After Effects 中了解关键帧 但这根本不是我需要的 我想做的就是按顺序为相同的 8 个 svg 路径设置动画 就像翻书一样 我可以在其中轻松编辑
  • 当状态为 AVKeyValueStatusFailed 时重新加载 AVAsset 中的密钥

    我正在执行以下操作 创建一个新的AVAsset与给定的 URL 该 URL 指向远程 Web 服务器上的视频 尝试加载tracks通过调用属性loadValuesAsynchronouslyForKeys completionHandler
  • Gecko/Firefox 对 HTML5 通知的支持

    我想知道是否有任何内置支持HTML5 通知到目前为止 Gecko 浏览器有哪些功能 也许有一些隐藏的开发人员 我知道 WebKitwindow webkitNotifications效果很好 那么 有 Firefox 实现吗 Update
  • 按键合并的两个字典的值的并集

    我有两本词典 d1 a x y b k l d2 a m n c p r 如何合并这两个字典以获得这样的结果 d3 a x y m n b k l c p r 当字典的值是简单类型 如 int 或 str 时 这有效 d3 dict i a