У меня есть словарь списков, где каждый список представляет все возможные значения для переменной (ключа):
# dictionary of lists
values = {1: [4, 7, 8],
2: [1, 3],
3: [7, 5, 6],
4: [2]}
Я хочу создать кортежи, содержащие все возможные перестановки этих значений (декартово произведение), чтобы я мог определить, какие комбинации значений являются правильными.
# example
perms = [(4, 1, 7, 2), (4, 1, 5, 2), (4, 1, 6, 2), (4, 3, 7, 2), ... , (8, 3, 6, 2)]
Есть ли простой способ сделать это? Я задал другую проблему, и она была решена с помощью перестановок itertools. Однако я не совсем понимаю, как выбрать одно число из нескольких списков для перестановки.