位置: 编程技术 - 正文

pygame加载中文名mp3文件出现error(pygame如何加载图片)

编辑:rootadmin

推荐整理分享pygame加载中文名mp3文件出现error(pygame如何加载图片),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:pygame显示中文字体,pygame如何加载图片,pygame在哪个文件夹,pygame.freetype.font,pygame如何加载图片,pygame.locals,pygame.freetype.font,pygame显示中文,内容如对您有帮助,希望把文章链接给更多的朋友!

前言: 

今天刚刚做了个音乐列表,但笔者发现在指定目录mp3文件名为中文时,便出现pygame.error,不能正确加载指定mp3文件.写好的代码不想再改了,来个小测试吧

pygame播放mp3文件:

这里笔者只介绍一种好理解的方法,具体请查看pygame.mixer.music官方文档

打开官方文档,笔者发现,像是发现了新大陆一样,这家伙太强大了,而现在我只能用它来播放我的mp3.好吧,剩下的等待以后来发掘吧.干什么讲什么,来个播放mp3 test代码:

其中,path表示待播放mp3文件的路径及文件名.这里笔者用的是源生的idle,可以正常播放此mp3.

发现Bug:

pygame加载中文名mp3文件出现error(pygame如何加载图片)

接着就是笔者在下午做完音乐列表测试播放的时候遇到的问题,即当待加载mp3文件名包含中文时,出现的pygame.error.

这就尴尬了,通过输出的path,发现中文没有乱码,笔者google了下,发现中文的社区有人说python应该尽量避免中文.也有人说可以改一下编码.但笔者试了,貌似不可以.英文社区类似Stack Overflow,均没有关于这个问题的解决方法.毕竟人家老外不太关心''我们自己的事''.于是,爬了半天,没找到有效的解决办法.好吧,这是硬伤.当然,大牛们应该是可以通过更改pygame中源代码解决的,这不是我能做的事^_^.

debug:

笔者来了个好玩的方法,应该还有更好的实现方法,我先来厚着脸皮说一下我的debug思路:

首先,当遇到中文名mp3是出现pygame.error 这时,程序出现严重错误.很自然想到try语句.这样,当遇到中文名mp3时出现error,自动转到except内容.笔者想到复制待播放文件到指定目录,并重命名为非中文.最后加载此非中文mp3文件,从而绕过了pygame中文识别的硬伤.下面上代码:

运行效果:

此时,程序已经可以正常播放中文名mp3文件.其实此问题并没有从本质上解决pygame中文识别问题,而是绕过了这个问题.这个方法也是有个弊端,就是会产生play.mp3这个文件,在做项目的时候可以放在缓存目录里.

至此,关于解决今天下午遇到的pygame中文识别问题叙述完毕,如有更好的方法,望请评论告知,谢谢.

刚才看了下python3.3.3 pygame目录,文件mixer.pyd科普了一下.pyd后缀,发现和dll一样是二进制文件,更改内容需要反编译.也就是说python并不是完全开源的.

标签: pygame如何加载图片

本文链接地址:https://www.jiuchutong.com/biancheng/377175.html 转载请保留说明!

上一篇:Python自动发邮件脚本(python自动发邮件内容)

下一篇:Python+Selenium自动化实现分页(pagination)处理(selenium自动化步骤)

  • 自然人电子税务报税流程
  • 税务ukey电子发票二维码用什么扫码
  • 增值税留抵退税怎么做账务处理
  • 关于办理退税手续的通知
  • 进项税额抵扣计算
  • 什么是进项加计扣除
  • 津贴和补贴计入加班费吗
  • 所得税费用在利润表中应在税金及附加项目中填列
  • 加工费暂估入库的会计分录
  • 未取得发票的费用
  • 代开的增值税专用发票应怎样填写?
  • 去年发生的成本但今年9月份才开票付款
  • 合同里包括产品销售和服务如何开票?
  • 待摊费用的金额
  • 劳保费计入管理费用的什么
  • 通讯费企业所得税计算
  • 取得虚开增值税专用发票罪量刑标准
  • 固定资产的入账价值怎么计算
  • 工程款填入申报表应税服务还是应税劳务一栏?
  • 小规模与一般纳税人哪个好
  • 中介公司属于工业企业吗
  • 抵债资产处置的意义
  • 增值税抵扣联退税多少
  • 附加税零申报怎么申报
  • 税前利润弥补亏损
  • 出售原材料属于营业收入吗
  • 企业减免税款的会计分录
  • linux怎么操作
  • linux操作系统有哪些版本
  • kb4586781安装失败
  • php中的include
  • 前端vue后端node
  • 核定征收的企业所得税怎么算
  • 没进项可以开专票吗
  • 业务招待费的账务处理金额
  • web前端基础教程
  • 学计算机选择什么专业
  • 基于Wav2Lip的AI主播
  • 判别是否属于劳务报酬
  • 金蝶kis资产负债表中预付款项年初余额公式怎么设置?
  • 个税APP怎么填报扣税最少
  • vue this.$el
  • 抵账的多余款是什么科目
  • 直接免征的税款属于政府补助吗
  • 买新车检测费
  • 初始化mysql命令
  • 房东减免部分房租
  • 固定资产公司
  • 安装费用怎么做分录
  • 印花税每个月都计提吗
  • 开发成本期末如何结转
  • 固定资产抵扣进项税额最新规定
  • 备用金被盗刷了怎么办
  • 今年缴纳上年的税收滞纳金
  • 收银员长款短款什么意思
  • 汇算清缴退款如何做账
  • 托管服务费开什么发票
  • 公司拿房子抵债需要缴纳什么税费
  • 进项发票超过期限不认证怎么办
  • 应付职工薪酬账户贷方登记的是
  • 关于中秋节的古诗
  • truncate可以删除部分数据
  • MySQL索引背后的数据结构及算法原理
  • mysql 5.7.33安装
  • 捷波mig41tm主板
  • win2008如何安装telnet
  • ubuntu zmq
  • win10引导记录损坏修复方法详解
  • 自动切换桌面
  • 向Windows8靠拢 全新的个性化库页面
  • cocos roadmap
  • vue eventhub
  • js获取浏览器类型和版本信息
  • EasyTouch Broadcast messages选项在js和c#下的用法
  • wordpress教程
  • js 字符串转字节
  • 填了专项附加扣除但没有进行综合年度汇算
  • 哈尔滨银行网上银行怎么开通
  • 湖北省国家税务局历任局长
  • 电子客票号码8768是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设