Как найти разные комбинации между двумя списками? - PullRequest
0 голосов
/ 14 января 2019

Есть два списка. list_1 = [а1, b1, c1, d1] list_2 = [а2, b2, с2, d2]

Условия таковы: (i) в каждой из комбинаций должно быть четыре элемента, и (ii) комбинации должны содержать один элемент a (т. Е. A1 или a2), один элемент b (т. Е. B1 или b2), один элемент c (т. е. c1 или c2) и один элемент d (т. е. d1 или d2).

Пожалуйста, помогите мне узнать различные комбинации с помощью Python 3x.

1 Ответ

0 голосов
/ 14 января 2019

Вы можете использовать itertools.product:

from itertools import product

list_1 = ['a1','b1','c1','d1']
list_2 = ['a2','b2','c2','d2']

result = list(product(*zip(list_1, list_2)))

print(result)

[('a1', 'b1', 'c1', 'd1'), ('a1', 'b1', 'c1', 'd2'), ('a1', 'b1', 'c2', 'd1'), ('a1', 'b1', 'c2', 'd2'), ('a1', 'b2', 'c1', 'd1'), ('a1', 'b2', 'c1', 'd2'), ('a1', 'b2', 'c2', 'd1'), ('a1', 'b2', 'c2', 'd2'), ('a2', 'b1', 'c1', 'd1'), ('a2', 'b1', 'c1', 'd2'), ('a2', 'b1', 'c2', 'd1'), ('a2', 'b1', 'c2', 'd2'), ('a2', 'b2', 'c1', 'd1'), ('a2', 'b2', 'c1', 'd2'), ('a2', 'b2', 'c2', 'd1'), ('a2', 'b2', 'c2', 'd2')]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...