【问题标题】:Comparing un-ordered dictionary values along with keys [duplicate]比较无序的字典值和键[重复]
【发布时间】:2018-12-09 22:17:29
【问题描述】:

我们有 2 部字典,我想应用以下条件并将 old_x 更新为 new_x

old_x = {"A":[1,2,3,4,5],"B":[],"C":[10,30]}
new_x = {"B":[3,4,5],"A":[1,5,3],"C":[30,10],"D":[2]}
  1. elementslists 值中的顺序并不重要。
    ex: "C"
  2. Keys 在字典内部的顺序并不重要。
    ex: un-ordered keys in new_x
  3. new_x 中不存在的 old_x 中的任何新 Key 应添加到 old_x
    ex: "D"
  4. 如果在new_x 列表中找到新元素,则使用new_x 值更新old_x 值列表,如果new_x 不包含old_x 的值,则同样删除values
    ex: "B" for updating, "A" for removing

比较时的预期输出:

old_x = {"A":[1,5,3],"B":[3,4,5],"C":[10,30],"D":[2]}

请帮我为此创建一个函数?

注意:new_x 中的元素和键并不总是相同。我将它们保持相似以演示问题的关键点。

【问题讨论】:

  • 到目前为止你有什么尝试?
  • 看起来像新的old_x 只是new_x。我的意思是new_xExpected output 是一样的。

标签: python python-3.x python-2.7 dictionary


【解决方案1】:

如果数组中键/值的顺序不重要,为什么不直接调用:

old_x.update(new_x)

【讨论】:

    【解决方案2】:

    这不简单吗:

    old_x = new_x
    

    你可以这样复制:

    old_x = dict(new_x)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-31
      • 2021-11-13
      • 2011-02-07
      相关资源
      最近更新 更多