哈工大的同义词词林,应该是上个世纪的产物,里面的词比较老旧,但好歹也能用
同义词词林的作用,跟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 使用范例的更多相关文章

  1. 原创:centos7.1下 ZooKeeper 集群安装配置+Python实战范例

    centos7.1下 ZooKeeper 集群安装配置+Python实战范例 下载:http://apache.fayea.com/zookeeper/zookeeper-3.4.9/zookeepe ...

  2. 解析搜狗词库(python)

    #!/usr/bin/python # -*- coding: utf-8 -*- import struct import sys import binascii import pdb #搜狗的sc ...

  3. 从CentOS安装完成到生成词云python学习日记

    欢迎访问我的个人博客:原文链接 前言 人生苦短,我用python.学习python怎么能不搞一下词云呢是不是(ง •̀_•́)ง 于是便有了这篇边实践边记录的笔记. 环境:VMware 12pro + ...

  4. redis集群配置及运行命令(windows和centos)附Python测试范例代码

    表示配置主服务器器的IP和端口 slaveof <masterip> <masterport> # 设置slave是否是只读的.从2.6版起,slave默认是只读的. slav ...

  5. Word Cloud (词云) - Python

    >>What's Word Cloud 词云 (Word Cloud)是对文本中出现频率较高的词语给予视觉化展示的图形, 是一种常见的文本挖掘的方法.目前已有多种数据分析工具支持这种图形, ...

  6. Leetcode 242.有效的字母异位词 By Python

    给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词. 示例 1: 输入: s = "anagram", t = "nagaram" ...

  7. python --subprocess 范例

    范例1:查看ipconfig -all命令的输出,并将将输出保存到文件tmp.log中: import subprocess handle = open(r'd:\tmp.log','w') p=su ...

  8. 根据词频生成词云(Python wordcloud实现)

    网上大多数词云的代码都是基于原始文本生成,这里写一个根据词频生成词云的小例子,都是基于现成的函数. 另外有个在线制作词云的网站也很不错,推荐使用:WordArt 安装词云与画图包 pip3 insta ...

  9. LeetCode--139--单词拆分(python)

    给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词. 说明: 拆分时可以重复使用字典中的单词.你可以假设字典中没有重复的 ...

随机推荐

  1. PL/SQL编程—变量

    SQL> declare c_tax_rate ,):=0.03; v_name ); v_passwd ); v_sale ,); v_tax_sale ,); begin select na ...

  2. TCP三次“握手”与4次“挥手”

    OSI(Open System Interconnection,开放系统互联)七层网络模型成为开放式系统互联参考模型,是一个把网络通信在逻辑上的定义,也可以理解成为定义了通用的网络通信规范.而我们的数 ...

  3. 自定义mousewheel事件,实现图片放大缩小功能实现

    本文是承接 上一篇的<自定义鼠标滚动事件>  的基础上实现的,建议大家先看一下上一篇的mousewheel的实现,再浏览下文: 上篇中我们介绍到: $element.mousewheel( ...

  4. 在Ubuntu上安装Brackets的步骤(加源和移除源)

    学习编写接口开发和测试时需要用到编写HTML页面,在Windows下采用的是HBuilder,但是无Ubuntu版本.安装一个网上推荐的Brackets 安装步骤:参见http://www.xiton ...

  5. SQL生成一串随机数

    SELECT RIGHT (CONVERT(VARCHAR(20),CONVERT(DECIMAL(20,15),rand())),15) AS c_random_number

  6. .NET计时器的使用-Stopwatch类

    作用: 微软提供的常用于统计时间消耗的类,作为一个固定的API接口供大家使用. 先看代码: using System; using System.Collections.Generic; using ...

  7. <nginx+PHP>nginx环境下配置支持php7

    [root@redhat7 ~]# wget http://am1.php.net/get/php-7.1.2.tar.gz/from/this/mirror [root@redhat7 ~]# ta ...

  8. gradle-rn-app工程运行须知

    singwhatiwanna edited this page 16 days ago · 5 revisions  Pages 7 Home Demo 工程运行须知 VirtualAPK API 概 ...

  9. Spring注解(环境)

    以数据库为例: 引入 c3p0数据源maven坐标 数据库驱动 @Configuration @PropertySource("classpath:/db.config.properties ...

  10. Google maps api demo 2

    demo /** * @fileoverview Sample showing capturing a KML file click * and displaying the contents in ...