0

そのため、単語ファイルから読み取り、アナグラムである一連の単語を出力するプログラムを作成しています。

現在、文字列を受け取り、すべての文字を並べ替えたタプルを返す関数があります。

def getLetters(string):
    """Purpose, to nab letters from a string and to put them in a tuple in
    sorted order."""
    tuple_o_letters = sorted(tuple(string))
    if _DEBUG:
        print tuple_o_letters

    return tuple_o_letters

この関数に送信されるのはこのコードです

try:
    fin = open("words.txt")
except:
    print("no, no, file no here.")
    sys.exit(0)

wordList = []
for eachline in fin:
   wordList.append(eachline.strip())
for eachWord in wordList:
   getLetters(eachWord)

今、私はタプルを簡単に作成できますが、タプルとキーは不変であるため最適な辞書キーとしてこれらを保存しようとしていますが、これを行う方法について混乱しています。また、値はこれらのキーを持つ単語のリストになります。

4

1 に答える 1

3

sorted()リストを返す場合、行を交換したい:

tuple_o_letters = tuple(sorted(string))

の文字をソートし、stringソートされた結果のリストをタプルに変換します。

于 2013-03-25T16:45:22.583 に答える