Python报错:OSError: cannot open resource

Python报错:OSError: cannot open resourcePython报错:OSError:cannotopenresource今天借助Python第三方库写了一个简单的生成词云的编程,但在使用wordcloud生成词云过程中,出现了OSError:cannotopenresource错误,通过断点调试并查看了一些网上的解决方法找到了原因:字体属性font_path的设置与系统提供的字体不一致。在本地电脑没有所写的字体,或是字体名称后缀…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Python报错:OSError: cannot open resource

今天借助Python第三方库写了一个简单的生成词云的编程,但在使用wordcloud生成词云过程中,出现了OSError: cannot open resource错误,通过断点调试并查看了一些网上的解决方法
找到了原因:字体属性font_path的设置与系统提供的字体不一致。
在本地电脑没有所写的字体,或是字体名称后缀不一致,因此只需查看本地是否有对应的字体,将其改为本地对应文件夹下已有的字体文件即可。

我的解决方案:

我的电脑是Mac的,如果你和我一样是Mac的

苹果电脑上的字体存在的位置有两种:
1、/System/Library/Fonts路径下。
2、/Library/Fonts路径下。
在/Library/Fonts,去查看你电脑上有什么字体,以及字体名称,换成对应的名称即可,比如在mac电脑上微软雅黑的字体名称是“Microsoft Yahei.ttf”,好像有些电脑是“msyh.ttf”/‘msyh.ttc’。

在这里插入图片描述
错误原因也有可能是有一些提供的是ttf格式,应设置为ttf,而不能写为ttc。
在这里插入图片描述
我了解到window电脑的字体文件存放在 C:\Windows\Fonts目录下,可将对应的字体文件拷贝出来查看类型,将font_path设置为系统提供的字体即可。解决方法可以参考我的,希望能帮到你~

成功!✌️
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197477.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JavaScript(1)高阶函数filter、map、reduce

    JavaScript(1)高阶函数filter、map、reduce前言需求:有这样一个数组[10,20,110,200,60,30,40]1.筛选出数组中小于100的元素2.将筛选出的每个元素的值x23.完成第2步之后,将数组中的所有元素加起来

    2022年7月31日
    3
  • 大数据实时项目(采集部分)[通俗易懂]

    大数据实时项目(采集部分)[通俗易懂]第一章 实时需求概览1实时需求与离线需求的比较离线需求,一般是根据前一日的数据生成报表,虽然统计指标、报表繁多,但是对时效性不敏感。实时需求,主要侧重于对当日数据的实时监控,通常业务

    2022年8月2日
    8
  • vue响应式原理的实现

    vue响应式原理的实现Vue最独特的特性之一,是其非侵入性的响应式系统。数据模型仅仅是普通的JavaScript对象。而当你修改它们时,视图会进行更新。这使得状态管理非常简单直接,不过理解其工作原理同样重要,这样你可以避开一些常见的问题。—-官方文档引言Vue的数据双向绑定,响应式原理,其实就是通过Object.defineProperty()结合发布者订阅者模式来实现的。Observer通过O…

    2022年5月1日
    39
  • 数据库的隔离级别

    数据库的隔离级别本文主要介绍了数据库中的隔离级别,以及其会产生的场景。

    2022年5月10日
    41
  • TranslateMessage和DispatchMessage作用[通俗易懂]

    TranslateMessage和DispatchMessage作用[通俗易懂]PostMessage是将消息放入到窗体的消息队列中,窗体过程需要等待一段时间,以便从队列中取出了消息之后,才处理消息SendMessage不将消息放入消息队列,而只是把直接让窗体过程处理这个消息,所以消息一般能立刻响应。TranslateMessage函数是将消息转化成某一个,或更多的消息,比如,当消息循环接收一个WM_KEYDOWN消息时,如果用户按下了字母键,那么Translat

    2022年9月4日
    2
  • java 流水线模式_流水线设计模式实现

    java 流水线模式_流水线设计模式实现这是关于管道实现的设计问题。以下是我的天真实施。流水线设计模式实现接口在管道的各个步骤/阶段:在流水线的步骤/阶段的publicinterfaceStep{publicUexecute(Tinput);}具体实现:publicclassStepOneimplementsStep{@OverridepublicIntegerexecute(Integerinput){r…

    2022年8月14日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号