首页 > 解决方案 > 如何改进这个列表理解?

问题描述

我想知道我可以改进我的 python 代码,使其写得更短。我只使用标准库和 numpy 库。这是代码。

import numpy as np
x=1
y=2
np.array([(a,b,c) for a in [x,y] for b in [x,y] for c in [x,y]])

如您所见,该程序生成了所有三种元素组合。这个程序中有类似的部分,for a in [x, y]可以写得更短吗?

[已编辑]

我只想使用标准库和 numpy 库。

输入应该是任何值,例如 x=3、y=8。

标签: pythonnumpylist-comprehension

解决方案


使用itertools.product

from itertools import product

# ...
np.array(list(product((x, y), repeat=3)))

推荐阅读