列表包含嵌套列表的元组的理解

时间:2014-10-07 18:03:03

标签: python list-comprehension

我一直在努力获得列表理解来处理以下数据结构,这是一个包含列表和字典列表的元组,我只想从中返回带有字典的列表:

([[1,2,3,4], [{"foo1":1,"bar1":2,"foobar1":3},{"foo2":1,"bar2":2,"foobar2":3}]])

如果将上面的内容分配给变量var,我到目前为止尝试了以下列表理解,这不符合我的要求:

var = [[x] for x in var]

有谁能告诉我这里我做错了什么?

2 个答案:

答案 0 :(得分:1)

我们走了

>>> var = ([[1,2,3,4], [{"foo1":1,"bar1":2,"foobar1":3},{"foo2":1,"bar2":2,"foobar2":3}]])
>>> [j for i in var for j in i if isinstance(j, dict)]
[{'bar1': 2, 'foobar1': 3, 'foo1': 1}, {'foobar2': 3, 'bar2': 2, 'foo2': 1}]

答案 1 :(得分:0)

只需使用var [1]就可以从元组中获取字典列表:

>>> var = ([[1,2,3,4], [{"foo1":1,"bar1":2,"foobar1":3},{"foo2":1,"bar2":2,"foobar2":3}]])
>>> var[1] 
[{'bar1': 2, 'foo1': 1, 'foobar1': 3}, {'bar2': 2, 'foo2': 1, 'foobar2': 3}]