从迭代生成列表列表

时间:2013-09-17 17:24:21

标签: python list python-2.7

以下是我试图解决的问题的一个例子:

d=[1,2,3]
e=[d[0],d[1]]

def add_up(x,y):
    return (x + y)

我的尝试:

h=[[add_up(a,b)] for a in e for b in d]
print h

我的尝试输出

[[2], [3], [4], [3], [4], [5]]

我想要的输出:**[[2,3,4],[3,4,5]]**

有什么建议吗? 感谢。

1 个答案:

答案 0 :(得分:1)

你几乎就在那里,使用:

print [[add_up(a, b) for b in d] for a in e]  # prints [[2, 3, 4], [3, 4, 5]]