我正在解析xml
个文件...因此,有一个名为case
的字段:有时候它是单个OrderedDict
,有时它是&## 1}} 39; OrderedDict
列表。那就是它:
OrderedDict([(u'duration', u'2.111'), (u'className', u'foo'), (u'testName', u'runTest'), (u'skipped', u'false'), (u'failedSince', u'0')])
[OrderedDict([(u'duration', u'0.062'), (u'className', u'foo'), (u'testName', u'runTest'), (u'skipped', u'false'), (u'failedSince', u'0')]), OrderedDict([(u'duration', u'0.461'), (u'className', u'bar'), (u'testName', u'runTest'), (u'skipped', u'false'), (u'failedSince', u'0')])]
我希望始终将该表达式作为单个列表。原因是要有一个for
循环来处理它。我想做类似的事情:
[case]
但是后来我会[[case]]
。我不认为列表连接或连接会对我有所帮助。一个简单的解决方案是检查case
是list
还是OrderedDict
类型,但我正在寻找一个更简单的,一行,pythonic解决方案,就像我上面描述的那样。我怎么能做到这一点?
答案 0 :(得分:3)
由于list
和OrderedDict
都是两种容器,因此如果您确定xml解析将始终使用{{ 1}}类型。
没有理由你不能在单行中做到这一点:
list