Produto cartesiano de um dicionário de listas
Estou tentando escrever um código para testar o produto cartesiano de vários parâmetros de entrada.
Eu olheiitertools
, mas éproduct
função não é exatamente o que eu quero. Existe uma maneira óbvia e simples de usar um dicionário com um número arbitrário de chavese um número arbitrário de elementos em cada valor e, em seguida, produz um dicionário com a próxima permutação?
Entrada:
options = {"number": [1,2,3], "color": ["orange","blue"] }
print list( my_product(options) )
Exemplo de saída:
[ {"number": 1, "color": "orange"},
{"number": 1, "color": "blue"},
{"number": 2, "color": "orange"},
{"number": 2, "color": "blue"},
{"number": 3, "color": "orange"},
{"number": 3, "color": "blue"}
]