哈工大同義詞詞林 python 使用范例


哈工大的同義詞詞林,應該是上個世紀的產物,里面的詞比較老舊,但好歹也能用
同義詞詞林的作用,跟word2vec的獲取相近詞函數比較類似,這兩者發揮的功效比較,看具體的應用吧
1. 首先下載包含同義詞的txt,CSDN上有鏈接: http://download.csdn.net/download/answerme11/7307771 
2. 得到txt的內容如下: 
    
      每一行由一系列的詞條構成
     每一行的行頭的字母及數字編碼表示類別
    
      “=”代表“相等”、“同義”;
      “ #”代表“不等”、“同 類”,屬於相關詞語;
       @”代表“自我封閉”、“獨立”,它在詞典中既沒 有同義詞,也沒有相關詞。  

  3.  python調用同義詞詞林的代碼
     
     
     
             
  1. def get_sym(w,word_set):
  2. # w: input word
  3. # word_set: 同義詞詞集或相關詞詞集
  4. results=[]
  5. if(len(w)==1):
  6. for each in word_set:
  7. for word in each:
  8. if w == word:
  9. results.append(each)
  10. break
  11. else:
  12. for each in word_set:
  13. for word in each:
  14. if w in word:
  15. results.append(each)
  16. break
  17. return results
  18. f=open('同義詞.txt','r')
  19. lines=f.readlines()
  20. sym_words=[]
  21. sym_class_words=[]
  22. # 從txt中獲取詞條,構建同義詞詞集sym_words和相關詞詞集sym_class_words
  23. for line in lines:
  24. line=line.replace('\n','')
  25. items=line.split(' ')
  26. index=items[0]
  27. if(index[-1]=='='):
  28. sym_words.append(items[1:])
  29. if (index[-1] == '#'):
  30. sym_class_words.append(items[1:])
  31. print(sym_words)
  32. print(64*'*')
  33. print(sym_class_words)
  34. while True:
  35. w=input()
  36. print('同義詞',66*'*')
  37. print(get_sym(w, sym_words))
  38. print('同類詞', 66 * '*')
  39. print(get_sym(w, sym_class_words))
運行結果:
 




 

     
 




附件列表

     


    免責聲明!

    本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



     
    粵ICP備18138465號   © 2018-2025 CODEPRJ.COM