私はPythonに非常に慣れていないので、私がやりたいことを正確に実行しないこのコードを実行しました。ヘルプは大歓迎です。
ここに私がこれまで持っている私のコードがあります
def permute(LIST):
length=len(LIST)
if length <= 1:
yield LIST
else:
for n in range(0,length):
for end in permute( LIST[:n] + LIST[n+1:] ):
yield [ LIST[n] ] + end
[4,3,2,1] のようなものを指定すると、最後の数字は繰り返されず、各文字の組み合わせは 1 回だけです。したがって、たとえば、出力が [4,3,2,2] になることはありません。
しかし、私はそれをしたいです。これは、出力をどのようにしたいかの例です
INPUT = ['1','2','3','4']
OUTPUTs = [1 2 3 4][1 2 3 1][1 2 3 2][1 2 3 3] [1 2 4 1][1 2 4 2] [1 2 4 3] [1 2 4 4] [1 2 1 1]and so on
この変更を実装するためにコードに何ができますか?
あなたの親切な助けに感謝します
編集: ITERTOOLS を使用できません