'''
《三国演义》是中国古典四大名著之一,曹操是其中主要人物,考生文件夹下文件data.txt给出《三
国演义》简介。
问题1:请编写程序,用Python语言中文分词第三方库jieba对文件data.txt进行分词,并将结果写入文件out. txt,每行一个词,例如:
内容简介
编辑
整个
故事
在
东汉
...
在考生文件夹下给出了程序框架文件PY301-1.py,补充代码完成程序(10分)
'''
思路:
# 导入jieba(中文分词)库
import jieba
# 打开文件
fp = open('data.txt', 'r')
fw = open('out.txt', 'w')
lines = fp.readlines()
for line in lines:
line = line.strip(' ') # 删除每行首尾可能出现的空格
wordList = jieba.lcut(line) # 用结巴分词,对每行内容进行分词
fw.writelines('\n'.join(wordList)) # 将分词结果存到文件out.txt中
# 关闭文件 释放资源
fw.close()
fp.close()
**总结**:
结巴库用的好,中文分词没烦恼!
代码如下:
# 导入jieba(中文分词)库
import jieba
# 打开文件
fp = open('data.txt', 'r')
fw = open('out.txt', 'w')
# 读取文件的每一行,以列表形式返回
lines = fp.readlines()
for line in lines:
line = line.strip(' ') # 删除每行首尾可能出现的空格
wordList = jieba.lcut(line) # 用结巴分词,对每行内容进行分词
fw.writelines('\n'.join(wordList)) # 将分词结果存到文件out.txt中
# 关闭文件,释放资源
fp.close()
fw.close()
'''
问题2:对文件out.txt进行分析,打印输出曹操出现次数。
'''
思路:
import jieba
f = open('out.txt', 'r') # 以读的方式打开文件
words = f.readlines()
D = {}
for w in words: # 词频统计
D[w[:-1]] = D.get(w[:-1], 0) + 1
print("曹操出现次数为:{} ".format(D["曹操"]))
# 关闭文件 释放资源
f.close()fw.close()
fp.close()
**总结**:
jieba库+字段的词频,考试的基本套路!
代码如下:
# 导入jieba(中文分词)库
import jieba
f = open('out.txt', 'r') # 以读的方式打开文件
words = f.readlines()
D = {}
for w in words: # 词频统计
D[w[:-1]] = D.get(w[:-1], 0) + 1
print("曹操出现次数为:{} ".format(D["曹操"]))
f.close()
相关代码和资源都会打包到下面的链接(另附一个份刷题笔记):
代码(直接用Python导入即可),软件,题库:
链接:https://pan.baidu.com/s/1WClgPe1D79_GKclR26LJdA
提取码:pjmm