我有一个2D数组,我需要对它做一些分析,这涉及我对每一对可能的元素进行计算,然后将它们相加。
问题在于我需要避免为每对进行两次计算 - 如果我正在查看元素A和B,我需要在A * B上进行计算并避免重复B * A。
目前我这样做:
comb=[]
amo=len(inds)
for m in range(0,amo):
for n in range(m+1,amo):
comb.append([inds[m],inds[n]])
其中inds
是1d数组。
答案 0 :(得分:0)
看起来您正在寻找itertools.combinations。
from itertools import combinations
comb = list(combinations(inds, 2))