位置: 编程技术 - 正文

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自动化步骤)

  • 增值税纳税申报表在哪里打印
  • 发票必须用完才可以购买吗
  • 员工福利费可以公账出吗
  • 企业出现亏损的原因有哪些
  • 累计折旧计入
  • 未提供一般纳税人证明
  • 培训发生的差旅费的会计准则有哪些
  • 绿化支出如何做会计处理?
  • 怎么调整应收账款账龄
  • 应交增值税为什么是销项减进项
  • 个人转让住宅要交哪些税
  • 事业单位预算外收入
  • 专票当月抵扣后当月作废会被发现吗
  • 个人如何缴纳公共维修基金
  • 营改增后纳税人可以使用的发票种类
  • 个人劳务费怎么开票
  • 个人独资企业所得税
  • 增值税优惠的二级明细科目
  • 体现公司财务状况的报表
  • 企业所得税优惠事项包括哪些?
  • 印花税没有按时申报怎么办
  • 持有至到期投资账务处理
  • 经营出租固定资产折旧额计入什么科目
  • 多系统设置
  • 网络限速数值
  • 一般纳税人和小规模纳税人的区别
  • 如何更改应用商店
  • 如何开启系统设置
  • mysql 数据源
  • php数组可以使用哪些键名
  • wind10画图在哪
  • 应付票据转应付账款分录
  • PHP:session_cache_expire()的用法_Session函数
  • PHP:oci_get_implicit_resultset()的用法_Oracle函数
  • 企业税计算方法
  • 企业应纳所得税计算公式
  • 本年利润的会计科目
  • 跳出框架是什么意思
  • 待抵扣进项税在贷方什么意思
  • 银行存款余额调节表是不是原始凭证
  • 主营业务收入月末需要结转吗
  • 可供出售债权投资
  • 民办非企业现金流量表的编制公式
  • 小规模收到成本发票分录
  • 所得税预缴申报表
  • 图片加载不存在
  • 年数总和法怎么算年折旧额
  • 可转债公允价值评估
  • 应交税费为什么写在借方
  • 收回上年度拨款怎么做账
  • 增值税专用发票有几联?
  • 金融企业有
  • 冲销以前年度多计提的费用分录
  • 税务开票金额每个月有限制吗
  • 长期借款账务处理会计分录
  • 注册资本认缴制的利弊
  • 办公设备维修费会计分录
  • 发给客户免费的短信
  • 个人所得税多计算了一个月工资怎么办
  • 建筑发票可以一次性抵扣吗
  • 供货商做产品配送怎么做
  • 清除sql表内容
  • java调用jni
  • linux内核构成
  • win8怎么让我的电脑显示在桌面上
  • windowsxp装机图片
  • 远程控制安全
  • win7系统的安装
  • neoDVDstd.exe - neoDVDstd是什么进程 有什么用
  • 牛叉叉旗舰店没有了改名成啥了
  • 基于nodejs的项目
  • 杨辉三角的代码
  • 举例讲解水生花卉栽培管理
  • python简单编码
  • javascript基础笔记
  • 青岛税务局领导
  • 最新设立税务师事务条件
  • 广州市地税局副局长
  • 违法的税务记录怎么消除
  • 新入职税务干部工作心得
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设