1
이 코드가 더 잘 수행하고 내가 itertools.permutations 및 itertools.chain를 사용해야한다고 생각itertools : 2 차원 반복자
def get_permutations():
out = []
for a in range(0,6):
for b in range(0, 6):
for c in range(0, 6):
for d in range(0, 6):
for e in range(0, 6):
for f in range(0, 6):
out.append([a,b,c,d,e,f])
return out
더 파이썬 수 있도록 itertools를 사용하려고하지만, 난을 만들 목록 또는 반복자와 같은 결과를 얻으려면 이들을 함께 모으는 방법을 모릅니다. itertools를 사용하지 않는 다른 솔루션이 있다면이를 고려해 보겠습니다.
'itertools.product (range (6), repeat = 6)'이 아닌가요? https://docs.python.org/3/library/itertools.html#itertools.product – jonrsharpe
이들은 순열이 아니라 jonsharpe가 언급 한 데카르트 제품입니다. itertools.product'를 사용하면 더 빠르게 만들지 만 알고리즘의 복잡성은 변하지 않을 것입니다 (여기서는 상당히 끔찍합니다). –
@StefanPochmann은'range (6)'이 가변적이라고 가정합니다. 그렇지 않다면'itertools.product'를 사용하거나이 중첩 된 루프만으로는 큰 차이를 만들 수 없습니다. –