Macbook Macos系统中python读取文件出错的解决过程:三国演义词频统计实例

在学习Python时,作者遇到了在Macos系统中读取GBK编码的三国演义文本文件进行词频统计的问题。通过尝试修改编码方式和错误处理,最终解决了无法读取的问题。文中分享了解决过程及完整代码,结果显示曹操是出现频次最高的人物。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一个小问题却能极大挫伤学习热情,愣是两天不想碰。
在学习中国大学mooc上嵩天老师的《python语言程序设计》,第六周的实例文本词频统计(中遇到问题,按照老师的代码在mac上操作不可行,后来改动一下,终于成功。

这个实例是要统计三国演义出现频次最高的人名,(你猜是曹操还是孔明?答案在文末,猜对没奖但有成就感哈哈)

完整代码

#CalThreeKingdomsV1.py
import jieba
txt = open("threekingdoms.txt", "r", encoding='utf-8').read()
words  = jieba.lcut(txt)
counts = {}
for word in words:
    if len(word) == 1:
        continue
    else:
        counts[word] = counts.get(word,0) + 1
items = list(counts.items())
items.sort(key=lambda x:x[1], reverse=True)
for i in range(15):
    word, count = items[i]
    print ("{0:<10}{1:>5}".format(word, count))

问题出在第二行

老师代码

txt = open("threekingdoms.txt", "r", encoding='utf-8).read()

实际可行代码

txt = open("threekingdoms.tx
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值