tutorial python list tuples cartesian-product

python - matplotlib histogram tutorial



Python todos los pares posibles de 2 elementos de la lista, y obtener el índice de ese par (2)

digamos que tengo dos listas:

a = list(1,2,3) b = list(4,5,6)

Entonces puedo tener 9 pares de estos miembros de la lista:

(1,4) (1,5) (1,6) (2,4) (2,5) (2,6) (3,4) (3,5) (3,6)

Ahora, dados dos miembros de la lista como arriba, ¿puedo averiguar el índice del par? Como (1,4) desde arriba sería el primer par.


Una forma de hacer esto:

  1. Encuentre el primer elemento de la pareja que busca en la primera lista:

    p = (1, 4) i = a.index(p[0])

  2. Encuentre el segundo elemento del par que busca en la segunda lista:

    j = b.index(p[1])

  3. Calcule el índice en la lista de productos:

    k = i * len(b) + j


Y para completar la respuesta y permanecer en el ejemplo:

import itertools a = [1, 2, 3] b = [4, 5, 6] c = list(itertools.product(a, b)) idx = c.index((1,4))

Pero este será el índice de lista basado en cero, entonces 0 en lugar de 1.