哈工大同义词词林 python 使用范例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了哈工大同义词词林 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))
运行结果:
技术分享
 




 

     
 




附件列表

     











    以上是关于哈工大同义词词林 python 使用范例的主要内容,如果未能解决你的问题,请参考以下文章

    谁能发给我一个“同义词词林扩展版”

    如何在实践中应用大词林?

    python怎么利用同义词词林

    python threading超线程使用简单范例的代码

    TextInfoExp:自然语言处理相关实验(基于sougou数据集)

    transtoolweb: 帮助译者更快速更准确翻译 (http://transtoolweb.tk)