【问题标题】:Building a nested dictionary from a jagged excel file从锯齿状的 excel 文件构建嵌套字典
【发布时间】:2018-04-17 18:39:47
【问题描述】:

我正在尝试从一个锯齿状的 excel 文件构建一个嵌套字典(此处为图片:

),我正在尝试将更多“孩子”添加到:

dict = {'levelA': {'levelA1': 'levelA11', 'LevelA2': 'LevelA21'},
'levelB': {'levelB1': 'levelB11'}, 
'levelC': {'levelC1': 'levelC12'}}

我想找到的值:

"levelA21"

并将其替换为以下形式的字典:

['levelA21']['levelA211'] = "value"

我试过了:

dict = {'levelA1': ["value1",  "value"],
   "LevelB1": ["value77", "something"] }

(错误)和

"value" in [x for v in dict.values() for x in v]

这是真的。

我的代码处理合并的 xls 单元格并从空单元格中删除 NoneType。

那么在找到 "levelA21" 的 dict.value() 实例后,我可以将其替换为另一个嵌套级别,其中 key = "level21"、item = "levelA211" 和 value = "value"?

另外,我正在迭代地删除使用过的键和项目(前两列)。

我认为我应该从最深(最右)的级别从右到左递归地构建它并在我去的时候合并,但我无法掌握它。

很高兴完整分享代码类;记录得很好。

【问题讨论】:

    标签: python dictionary recursion nested


    【解决方案1】:

    也许我可以通过这个关于使用 json 文件构建嵌套字典的链接赚取一些积分...

    http://ohuiginn.net/mt/2010/07/nested_dictionaries_in_python.html

    Multi-level defaultdict with variable depth?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-18
      • 1970-01-01
      • 1970-01-01
      • 2021-04-20
      • 2016-06-17
      • 2016-05-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多