之前我使用pyhanlp进行新词发现都是使用:
word_info_list = HanLP.extractWords(IOUtil.newBufferedReader(corpus), 100)
这种方式进行读取的,注意这里的IOUtil.newBufferedReader(corpus),这里的corpus是要进行新词发现的文本路径,由于适应IOUtil包下的接口对这个文件进行读取,导致文件读取之后释放缓慢,后期继续访问该文件进行其他操作的时候会出现一些问题。
我们可以看到,extractWords接收的对象有BufferedReader和String两种类型,所以,下面我们使用其他的方式进行读取,从而解决之前的文件占用问题
1、读取文件内容 成字符串的形式
2、然后使用extractWords对该字符串进行新词发现
f=open(file_path,mode="r",encoding="utf-8")
data=f.read()
f.close
word_info_list = HanLP.extractWords(data, 100)
即可实现和最开始一样的效果