배열 목록이 있는데 배열 요소의 데카르트 곱을 얻고 싶습니다.목록 목록의 요소에 itertools.product를 적용하는 방법은 무엇입니까?
나는이보다 구체적를 만들기 위해 예를 사용합니다은 ...
itertools.product 트릭을 할 것 같다하지만 난 조금 구체적으로 붙어있다.
arrays = [(-1,+1), (-2,+2), (-3,+3)];
나는
cp = cp0 = [((-1, 1),), ((-2, 2),), ((-3, 3),)]
을 얻을하지만 내가 얻고 싶은 것은 내가 몇 가지 다른 일을 시도
cp1 = [(-1,-2,-3), (-1,-2,+3), (-1,+2,-3), (-1,+2,+3), ..., (+1,+2,-3), (+1,+2,+3)].
입니다
cp = list(itertools.product(arrays));
할 경우
cp = list(itertools.product(itertools.islice(arrays, len(arrays))));
cp = list(itertools.product(iter(arrays, len(arrays))));
그들은 모두 나에게 CP0 대신 CP1했다.
아이디어가 있으십니까?
미리 감사드립니다.
이미 아래의 답변을 가지고 있지만, 이것은 itertools 제품 기능에 대한 좋은 사용 사례가 있습니다 https://www.hackerrank.com/challenges/itertools-product – Afflatus