0

簡単な質問があります。Python で一連の文字を結合し、それらを結合して、テキスト ファイルに入れる方法はありますか?

つまり、「a」、「b」、「3」、「F」、「@」などの文字がある場合、それらをさまざまな方法で組み合わせて「abF」を作成する方法はありますか? "F@b"、"3F@ab" などをテキスト ファイルの別の行に出力しますか?

これまでのところ、私が持っているのはこれです:

lst = ("ab@F3")
list1 = list()
for ch in lst:
    list1.append(ch)
    print(list1)

「abF3」AND「3Fab」AND「Fb3a」のようなものを出力できるようにしたい

助言がありますか?

4

5 に答える 5

3
import itertools
with open('output.txt', 'w') as f:
    for n in range(1,5):
        for p in itertools.permutations('ab@F3',n):
            print(''.join(p), file=f)

上記に基づいていますが、いくつかの修正があります

于 2013-11-08T01:00:32.743 に答える
0

ワンライナー(リスト内包表記)アプローチ(重複した回答を追加したくないため)

import itertools
my_chars = "ab3F@"
print [''.join(p) for i in range(1, len(my_chars)+1) for p in itertools.permutations(my_chars,i)]
于 2013-11-08T01:09:44.453 に答える