微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

编写简单代码时,我不断收到“ UnicodeDecodeError:'utf-8'编解码器无法解码位置3131:无效的起始字节的字节0x80”错误

如何解决编写简单代码时,我不断收到“ UnicodeDecodeError:'utf-8'编解码器无法解码位置3131:无效的起始字节的字节0x80”错误

import os

def contains(filename,pattern):
    with open(filename) as file:
        for line in file:
            if pattern in line:
                return True
    return False

for filename in os.listdir('/Users/DanielKapri/Desktop/Python'):
    if contains(filename,'random'):
        print(filename,'contains random')

Prints:

Traceback (most recent call last):
  File "/Users/DanielKapri/Desktop/Python/contains.py",line 11,in <module>
    if contains(filename,'random'):
  File "/Users/DanielKapri/Desktop/Python/contains.py",line 5,in contains
    for line in file:
  File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/codecs.py",line 322,in decode
    (result,consumed) = self._buffer_decode(data,self.errors,final)
**UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 3131: invalid start byte**

有人知道我为什么会收到此错误吗? 我想浏览文件夹中的每个文件,然后使用“包含”功能查看它们是否包含“随机”一词。

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