2つのリストがあるとしましょう:
a = list(1,2,3)
b = list(4,5,6)
したがって、これらのリストメンバーを9組持つことができます。
(1,4)
(1,5)
(1,6)
(2,4)
(2,5)
(2,6)
(3,4)
(3,5)
(3,6)
さて、上記のような2つのリストメンバーが与えられた場合、ペアのインデックスを見つけることができますか?上からの(1,4)のように、最初のペアになります。
そして、答えを完成させて例にとどまるには:
import itertools
a = [1, 2, 3]
b = [4, 5, 6]
c = list(itertools.product(a, b))
idx = c.index((1,4))
ただし、これはゼロベースのリストインデックスになるため、1ではなく0になります。
これを行う1つの方法:
最初のリストで、探しているペアの最初の要素を見つけます。
p = (1, 4)
i = a.index(p[0])
2番目のリストで探しているペアの2番目の要素を見つけます。
j = b.index(p[1])
製品リストのインデックスを計算します。
k = i * len(b) + j