是否可以为列表推导中的每个项目返回 2 个(或更多)项目?
我想要什么(示例):
[f(x), g(x) for x in range(n)]
应该返回[f(0), g(0), f(1), g(1), ..., f(n-1), g(n-1)]
所以,用一些东西来替换这段代码:
result = list()
for x in range(n):
result.add(f(x))
result.add(g(x))
最佳答案
双重列表理解:
[f(x) for x in range(5) for f in (f1,f2)]
演示:
>>> f1 = lambda x: x
>>> f2 = lambda x: 10*x
>>> [f(x) for x in range(5) for f in (f1,f2)]
[0, 0, 1, 10, 2, 20, 3, 30, 4, 40]
关于python - 列表理解 : Returning two (or more) items for each item,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11868964/