带有属性的Python xmltodict Force Array

时间:2015-08-25 11:41:50

标签: python json xml xmltodict

我已经非常成功地使用python包xmltodict将我的xml字符串解析为python字典。

但是,我有以下问题:

<child>
  <episode>["a","b"]</episode>
</child>

解析为:

 { 
  child: {
    episode: ["a","b"]
    }
 }

,而:

<child>
  <episode>["a","b"]</episode>
  <episode>["c","d"]</episode>
</child` 

解析为:

{ child: 
   {
    episode: [
     ["a","b"],
     ["c","d"]
     ]
    }
 }

这意味着我写的代码会给我不同的结果,这取决于我正在观察的子观察。

我想要的是一种指定将剧集始终解析为数组的方法 - 与此.Net package类似。在Python中执行此操作的最佳方式(或 方式)是什么?

1 个答案:

答案 0 :(得分:1)

"episodes"键上尝试拼合功能?

def flatten(it):
    res = []
    for item in it:
        if not isinstance(item, list):
            res.append(item)
            continue
        res.extend(item)
    return res