(已解决)python报错:OSError: cannot open resource

文章讲述了在尝试使用Python的wordcloud库绘制词云时遇到的OSError,原因是缺少指定的字体文件FZSTK.TTF。作者发现自己的系统中没有这个字体,改为使用微软雅黑字体,但需找到正确文件名msyh.ttc。通过调整代码并使用正确字体文件,最终成功运行绘制词云。

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

背景:

在CSDN找了篇文章学习用python绘制词云,如何使用python绘制词云图wordcloud(超详细),使用他的代码做了简单修改。


问题描述

稍作修改运行出现如下报错:

 File "E:\Python\review_analyze\venv\lib\site-packages\PIL\ImageFont.py", line 248, in __init__
    self.font = core.getfont(
OSError: cannot open resource


原因分析:

文件名或者文件路径有错误!

 wordcloud函数需要导入字体,路径为'C:\Windows\Fonts\FZSTK.TTF',而我的路径没有安装这个字体文件,所以报错找不到文件。

所以查看路径下的可用字体,例如我改为使用微软雅黑。

代码里直接改名'C:\Windows\Fonts\微软雅黑.TTF',又出现如下报错:

 File "E:\Python\review_analyze\venv\lib\site-packages\PIL\ImageFont.py", line 245, in __init__
    with open(font, "rb") as f:
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Windows\\Fonts\\微软雅黑.TTF'

这说明文件名不对,其实字体的实际文件名并不叫“微软雅黑.TTF”。


解决方案:

通过文件属性找到正确的文件名。

  •         对于字形只有常规一种的字体(例如“宋体 常规”),直接右键选择属性;
  •         对于有多种字形的字体,直接右键是没有属性选项的,要双击打开字体详细信息,再右键选择属性。

这样就查到正确的文件名了,“微软雅黑 常规”的文件名是"msyh.ttc"。

代码改为

Font = r'C:\Windows\Fonts\msyh.ttc'

 运行成功!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值