笨鸟编程-零基础入门Pyhton教程

 找回密码
 立即注册
查看: 6630|回复: 2

[已经解决] 怎么解决这个error

[复制链接]

新手上路

Rank: 1

积分
22
发表于 2022-3-7 11:22:15 | 显示全部楼层 |阅读模式
  1. file = open('/Users/yedaoguang/Desktop/lessonpy/OpenMe.mp3')
  2. for each_line in file:
  3.     print(each_line, end='')

  4. file.close()
复制代码
运行出错显示
Traceback (most recent call last):
  File "/Users/yedaoguang/Desktop/lessonpy/readfile.py", line 2, in <module>
    for each_line in file:
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb3 in position 0: invalid start byte
这个我应该怎么改code
梁华峰已获得悬赏 10 C币

最佳答案

"OpenMe.mp3" 是个文本文件,之所以出错是因为其中包含有中文字符。 改成下面这样就可以了:
回复

使用道具 举报

新手上路

Rank: 1

积分
9
发表于 2022-3-7 11:23:03 | 显示全部楼层
"OpenMe.mp3" 是个文本文件,之所以出错是因为其中包含有中文字符。

    改成下面这样就可以了:

  1. file = open('/Users/yedaoguang/Desktop/lessonpy/OpenMe.mp3' , "rt" , encoding = "cp936")
  2. for each_line in file:
  3.     print(each_line, end='')

  4. file.close()
复制代码


回复

使用道具 举报

新手上路

Rank: 1

积分
2
发表于 2022-3-7 11:23:16 | 显示全部楼层

用记事本打开 openme.mp3 另存为,然后选编码为ansi  保存
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|笨鸟自学网 ( 粤ICP备20019910号 )

GMT+8, 2024-12-4 16:36 , Processed in 0.032852 second(s), 24 queries .

© 2001-2020

快速回复 返回顶部 返回列表