흥미로운 답변으로 질문 수정을 허용합니다.세 개의 목록을 기반으로 가능한 모든 튜플을 생성하십시오.
코드에 약간의 변화 후 내가 가지고이 :
#coding:utf-8
import itertools
stuff = [1, 2, 3, 4, 5, 8, 10, 13, 16, 17, 18, 20, 21, 22, 25]
for L in range(5, 6):
for subset in itertools.combinations(stuff, L):
subset = list(subset)
subset.extend([7, 9, 11, 15, 19, 23, 6, 12, 14, 24])
print(subset)
그것의 출력은 다음과 같다 :
이[1, 2, 3, 4, 5, 7, 9, 11, 15, 19, 23, 6, 12, 14, 24]
[1, 2, 3, 4, 8, 7, 9, 11, 15, 19, 23, 6, 12, 14, 24]
...
약 3000 라인을 생성합니다.
5 가지 숫자의 목록 항목과 가능한 모든 조합을 수행하고 모든 단일 조합 (하위 집합)에 다른 목록 (subset.extend ([7, 9, 11, 15, 19, 23, 14, 24])). 그것은 옳은 것 같습니다, 확실하지 않습니다.
하지만 내가 정말하고 싶은 것은 :
1 - 입력 세 가지 목록 (쌍 페어링)
stuff = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25]
pair = [2 , 6, 12, 20, 16, 10, 22]
unpair = [1, 5, 11, 19, 23, 25, 13, 17]
2 - 프로그램이 7에서 4 개 개의 숫자의 모든 조합을 생성합니다보다 쌍의 수는 쌍을 이루지 않고 동일하게 처리되고 쌍을 이루는 8 개의 숫자에서 4 개의 숫자의 모든 조합을 생성하고 함께 묶어서 쌍을 이룬 4 개의 숫자와 쌍을 이루는 4 개의 숫자가 조합 된 8 개의 가능한 조합을 만듭니다 like :
- 3 쌍의 연결 해제의 조합으로부터, 각 라인에 비해는 여기
[2, 12, 20, 10, 1, 5, 19, 23, 25, 3, 4, 8, 17, 21, 22]
[2, 12, 20, 10, 5, 19, 25, 13, 3, 4, 8, 17, 21, 22, 11]
...
같은 숫자의 반복없이 15 개 번호리스트를 생성하는리스트 재료로부터 7 개 숫자 조합 완료 생성 내가 붙어있는 곳. 각 목록에 대한 조합을 생성하고 숫자와 시퀀스를 반복하지 않고 15 개의 숫자 목록을 생성하는 방법
그것은 당신이 무엇을 의미하는지 완전히 명확하지 않다가 없을 때이 특정 코드에만 작동합니다. 예제 출력을 줄 수 있습니까? –
이것은 매우 수수한 질문입니다. 입력과 예상 출력을 실제로 고려해야합니다. –