1

私は PyEnchant を使用している英語の辞書から新しい辞書を作成しようとしています。たとえば、英語の単語--> 'new' になる--> 'new':1e1n1w (文字をアルファベット順に数えています) 私の問題は、英語辞書のオブジェクトにアクセスする方法がわからないため、繰り返し構造を作成して ne 辞書を作成するか、これを変更できることです (辞書を作成する 2 つのファイル、1 つの FFT と 1 つの txt. )

4

1 に答える 1

1

単語から始めて、アルファベット順にソートされた文字数/文字形式に変換します。

from collections import Counter

s = "new"

c = Counter(s)

print("".join(["{}{}".format(v,k) for k,v in sorted(c.items())]))
  • Counterそのために作られた特別な辞書を使って単語の文字数を数える
  • リスト内包表記を使用して新しい「単語」を作成し、カウンター キーと値 (並べ替え済み) を反復処理し、str.join

結果:1e1n1w

listcomps を使用して、入力リスト (ここでは 2 項目) からリストを作成するワンライナー:

newlist = ["".join(["{}{}".format(v,k) for k,v in sorted(Counter(word).items())]) for word in ['new','hello']]

結果:

['1e1n1w', '1e1h2l1o']
于 2017-01-01T20:33:08.163 に答える