我找到了这个功能,但我不想要
typedef static const char*(*myfn_t)(void);
const myfn_t functab[] = { &ram, &date };
我想在下面回答
A = [[1,2],[3,4]]
print list(product(*A))
[(1, 3), (1, 4), (2, 3), (2, 4)]
我该怎么办呢?
事实上,我不想在最终名单的原始列表中的同一个地方有一个号码。
我已经做到了:
[(1, 4),(2, 3)]
但它没有工作我只[2,3]回答......
答案 0 :(得分:1)
我想也许你想要得到每个列和每行中包含1个项目的所有元组,就像在一个行列式计算中一样。如果是这样的话:
from itertools import permutations
def afficherListe(A):
"""A is a square matrix. Returns all tuples used in det(A)"""
n = len(A)
return [tuple(A[i][j] for i,j in enumerate(p)) for p in permutations(range(n))]
#tests:
A = [[1,2],[3,4]]
B = [[1,2,3],[4,5,6],[7,8,9]]
print(afficherListe(A))
print(afficherListe(B))
输出:
[(1, 4), (2, 3)]
[(1, 5, 9), (1, 6, 8), (2, 4, 9), (2, 6, 7), (3, 4, 8), (3, 5, 7)]
答案 1 :(得分:1)
[(a,b) for a in A[0] for b in A[1] if A[0].index(a)!=A[1].index(b)]
输入:
A = [[1, 2], [3, 4]]
Out put:
[(1, 4), (2, 3)]