首页 > 解决方案 > Python函数将列表附加到字典中的键

问题描述

我有一本带钥匙的字典。键对应的值可以是列表/字典/字符串。

如果它是一个列表,则目标是:将另一个列表(将从另一个字典键获取)附加到现有列表中的键。

如果是字符串/字典,目标是:覆盖新的字符串/字典就可以了。

关于如何实现它的任何建议?

编辑 :

很抱歉没有提供示例。

假设我有字典 A

{
  "names" :  ["John","Tyler","Peter"],
  "Institution" :{
                   "name" : "St. John's Business School",
                   "address" : "34 Janson Drive"
                  }
}

和 B 作为

{
 "names" : ["Alice","Joanna"],
 "class" :  "Economics",
 "Institution" : {
                   "name" : "St. Mary's Republic",
                   "address" : "88, Weston Road"
                  }
}

现在我想要实现的是:

我将遍历 B,

如果 A 中不存在密钥(如“类”),我会将其添加到 A。

如果它存在并且它的值是一个字符串/字典,我将用 B 中的值替换 A 中的值(与“机构”一样)

如果它存在并且它的值是一个列表,我会将 B 中的列表附加到 A 中的列表中。(如“名称”中所做的那样)

所以在我的函数完成后,最终的字典看起来像:

{
  "names" : ["John","Tyler","Peter","Alice","Joanna"]
  "class" : "Economics",
  "Institution" : {
                       "name" : "St. Mary's Republic",
                       "address" : "88, Weston Road"
                      }
}

我设法使字符串/字典条件正确。但我无法附加到现有列表。

有什么建议吗?提前致谢

标签: pythonlistdictionary

解决方案


您可以向我们展示任何代码以查看究竟需要什么吗?

如果它只是将列表作为值附加到 dict 中的现有或新键,这可能会起作用:

myDict["movies"].append(['Jurassic Park 4'])

这可能有效,但同样,您是否正在尝试通过 dict/list 理解来完成某些特定的事情。


推荐阅读