다른 배열 항목의 가능한 모든 조합

다음과 같은 배열이 있습니다.

[[1, 2], [3, 4]]
[[4, 5], [5, 6]]
[[7, 8], [8, 9]]

이 배열의 가능한 모든 조합을 얻고 싶습니다.

[[1, 2], [4, 5], [7, 8]]
[[1, 2], [4, 5], [8, 9]]
[[1, 2], [5, 6], [7, 8]]
...

배열 안에있는 배열의 개수에 제한이 없습니다.

Python으로 수행하려면 어떤 접근 방식을 사용해야합니까?

juanpa.arrivillaga

데카르트 곱을 원합니다 .

>>> arrays = [
... [[1, 2], [3, 4]],
... [[4, 5], [5, 6]],
... [[7, 8], [8, 9]],
... ]
>>> import itertools
>>> from pprint import pprint
>>> pprint(list(itertools.product(*arrays)))
[([1, 2], [4, 5], [7, 8]),
 ([1, 2], [4, 5], [8, 9]),
 ([1, 2], [5, 6], [7, 8]),
 ([1, 2], [5, 6], [8, 9]),
 ([3, 4], [4, 5], [7, 8]),
 ([3, 4], [4, 5], [8, 9]),
 ([3, 4], [5, 6], [7, 8]),
 ([3, 4], [5, 6], [8, 9])]

목록이 저장되는 방식이 약간 모호하기 때문에 :

>>> x,y,z = arrays
>>> x
[[1, 2], [3, 4]]
>>> y
[[4, 5], [5, 6]]
>>> z
[[7, 8], [8, 9]]
>>> pprint(list(itertools.product(x,y,z)))
[([1, 2], [4, 5], [7, 8]),
 ([1, 2], [4, 5], [8, 9]),
 ([1, 2], [5, 6], [7, 8]),
 ([1, 2], [5, 6], [8, 9]),
 ([3, 4], [4, 5], [7, 8]),
 ([3, 4], [4, 5], [8, 9]),
 ([3, 4], [5, 6], [7, 8]),
 ([3, 4], [5, 6], [8, 9])]
>>> 

물론 itertools.product중첩 된 for 루프와 동일합니다.

>>> for s1 in x:
...   for s2 in y:
...     for s3 in z:
...       print(s1,s2,s3)
... 
[1, 2] [4, 5] [7, 8]
[1, 2] [4, 5] [8, 9]
[1, 2] [5, 6] [7, 8]
[1, 2] [5, 6] [8, 9]
[3, 4] [4, 5] [7, 8]
[3, 4] [4, 5] [8, 9]
[3, 4] [5, 6] [7, 8]
[3, 4] [5, 6] [8, 9]
>>> 

주의:

>>> for s in itertools.product(*arrays):
...   print(*s)
... 
[1, 2] [4, 5] [7, 8]
[1, 2] [4, 5] [8, 9]
[1, 2] [5, 6] [7, 8]
[1, 2] [5, 6] [8, 9]
[3, 4] [4, 5] [7, 8]
[3, 4] [4, 5] [8, 9]
[3, 4] [5, 6] [7, 8]
[3, 4] [5, 6] [8, 9]

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

배열의 가능한 모든 조합

분류에서Dev

배열의 가능한 모든 합계와 조합의 투영

분류에서Dev

배열에서 가능한 모든 조합의 곱의 합

분류에서Dev

정수 배열의 가능한 모든 조합 나열

분류에서Dev

배열 Vue Js의 다른 다른 json 객체에 동일한 값을 가진 배열의 모든 json 객체에 새 항목 추가 / 병합

분류에서Dev

2D NumPy와 배열의 모든 가능한 조합

분류에서Dev

배열의 가능한 모든 조합-재귀?

분류에서Dev

다른 열을 유지하면서 특정 열의 가능한 모든 조합을 가져옵니다.

분류에서Dev

Rails 4-Join Query가 배열의 모든 항목과 일치합니다.

분류에서Dev

값의 고정 합계와 배열 모델을 사용하여 배열의 가능한 모든 조합을 가져옵니다.

분류에서Dev

배열을 반복하여 일치 항목을 찾고 가능한 모든 솔루션을 반환합니다.

분류에서Dev

PHP에서 부울 값의 PHP 배열에 가능한 모든 조합 나열

분류에서Dev

MongoDB 집계의 배열에서 가능한 모든 조합 가져 오기 

분류에서Dev

Sumif는 한 열의 모든 항목과 일치합니다.

분류에서Dev

배열의 한 값을 다른 배열의 모든 값과 결합 PHP

분류에서Dev

한 배열의 모든 항목이 다른 배열의 일부 항목과 일치하는 배열 배열에서 배열을 필터링하려면 어떻게해야합니까?

분류에서Dev

배열에서 가능한 두 조합의 모든 세트 찾기

분류에서Dev

Java에서 주어진 배열의 가능한 모든 조합 찾기

분류에서Dev

열 항목을 동일한 열의 다른 모든 항목과 비교

분류에서Dev

배열의 모든 가능한 부분 집합의 곱의 합

분류에서Dev

모든 조합 14 개 항목 배열

분류에서Dev

배열의 다음 모든 항목 가져 오기

분류에서Dev

3 개의 다른 세트 내에서 가능한 모든 조합 얻기

분류에서Dev

가능한 모든 다항식 조합 생성

분류에서Dev

R의 다른 열을 기반으로 한 열의 모든 조합 합계

분류에서Dev

배열의 한 항목을 다른 모든 항목과 개별적으로 확인

분류에서Dev

다른 목록의 가능한 모든 조합의 2- 값 튜플 목록 만들기

분류에서Dev

Excel에서 두 열의 내용을 가능한 모든 조합

분류에서Dev

n 개의 문자열로 분할 될 때 가능한 모든 문자열 조합을 반환합니다.

Related 관련 기사

  1. 1

    배열의 가능한 모든 조합

  2. 2

    배열의 가능한 모든 합계와 조합의 투영

  3. 3

    배열에서 가능한 모든 조합의 곱의 합

  4. 4

    정수 배열의 가능한 모든 조합 나열

  5. 5

    배열 Vue Js의 다른 다른 json 객체에 동일한 값을 가진 배열의 모든 json 객체에 새 항목 추가 / 병합

  6. 6

    2D NumPy와 배열의 모든 가능한 조합

  7. 7

    배열의 가능한 모든 조합-재귀?

  8. 8

    다른 열을 유지하면서 특정 열의 가능한 모든 조합을 가져옵니다.

  9. 9

    Rails 4-Join Query가 배열의 모든 항목과 일치합니다.

  10. 10

    값의 고정 합계와 배열 모델을 사용하여 배열의 가능한 모든 조합을 가져옵니다.

  11. 11

    배열을 반복하여 일치 항목을 찾고 가능한 모든 솔루션을 반환합니다.

  12. 12

    PHP에서 부울 값의 PHP 배열에 가능한 모든 조합 나열

  13. 13

    MongoDB 집계의 배열에서 가능한 모든 조합 가져 오기 

  14. 14

    Sumif는 한 열의 모든 항목과 일치합니다.

  15. 15

    배열의 한 값을 다른 배열의 모든 값과 결합 PHP

  16. 16

    한 배열의 모든 항목이 다른 배열의 일부 항목과 일치하는 배열 배열에서 배열을 필터링하려면 어떻게해야합니까?

  17. 17

    배열에서 가능한 두 조합의 모든 세트 찾기

  18. 18

    Java에서 주어진 배열의 가능한 모든 조합 찾기

  19. 19

    열 항목을 동일한 열의 다른 모든 항목과 비교

  20. 20

    배열의 모든 가능한 부분 집합의 곱의 합

  21. 21

    모든 조합 14 개 항목 배열

  22. 22

    배열의 다음 모든 항목 가져 오기

  23. 23

    3 개의 다른 세트 내에서 가능한 모든 조합 얻기

  24. 24

    가능한 모든 다항식 조합 생성

  25. 25

    R의 다른 열을 기반으로 한 열의 모든 조합 합계

  26. 26

    배열의 한 항목을 다른 모든 항목과 개별적으로 확인

  27. 27

    다른 목록의 가능한 모든 조합의 2- 값 튜플 목록 만들기

  28. 28

    Excel에서 두 열의 내용을 가능한 모든 조합

  29. 29

    n 개의 문자열로 분할 될 때 가능한 모든 문자열 조합을 반환합니다.

뜨겁다태그

보관