2017-01-01 88 views
1

我想從英語詞典創建一個新詞典,我已經使用PyEnchant.For例如:英語單詞 - >'new'變成 - >'new': 1e1n1w(我按字母順序計算字母) 我的問題是,我不知道如何訪問英語詞典中的對象,所以我可以創建一個重複結構並創建ne詞典或更改這個。(我有兩個文件,使字典,一個FFT和一個TXT)使用PyEnchant創建詞典語言詞典

+0

你想知道如何轉換的 「新」 到 「1e1n1w」?這是你的問題嗎? –

回答

1

開始從詞,將其轉換爲字母數/信的格式,按字母順序排序:

from collections import Counter 

s = "new" 

c = Counter(s) 

print("".join(["{}{}".format(v,k) for k,v in sorted(c.items())])) 
爲此目的可以使用
  • 通過迭代對計數器按鍵&值(排序),再造使用str.join
  • 字符串創建新的「詞」使用列表理解作出了特別 Counter詞典的單詞的3210
    • 計數信

      結果:使用listcomps:

      1e1n1w

      的一行來創建輸入表(2項這裏)名單個

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

      結果:

      ['1e1n1w', '1e1h2l1o'] 
      
    +0

    Theres不需要for循環,'c = Counter(s)'會做這項工作。 – hashcode55

    +0

    我累了!謝謝。 –