错误在函数ciyun(txt,k)开头的四行代码:
1.变量txt是以文本内容而不是路径字符串传入的,你把它作为文件路径使用了。文本内容已经传入,不需要再读取文件,把函数里的第一行删除,并先对文本分割获得词列表。
2.获得的前一百个关键词是元组列表形式的,不能被generate函数调用,要处理成字符串。
相应的代码修改如下:
words = txt.split()
#wordstr = " ".join(words)
c = Counter(words)
common_c = ' '.join([x[0] for x in c.most_common(100)])