转码utf-8,却报“’gbk’ codec can’t decode byte 0x80 in position 8: illegal multibyte sequence”错误
在python中,如果你遇到这个错误,表明你虽然使用decode(‘utf-8’)转码了字符串,但它实际上仍是gbk编码。这会导致读取时出现解码错误。
为了解决这个问题,可以在读取文件时明确指定二进制模式,然后在转码之前将二进制数据转换为utf-8字符串。
fp = open(myfile, 'rb') # 二进制打开 keyfile = fp.read().decode('utf-8') # 转码 keyfile = keyfile.replace(" ", "--").split("--") # 以行剪切,是一个数组
登录后复制
通过这种方法,你可以将gbk编码的文件成功转码为utf-8字符串,并进一步对其进行处理。
立即学习“”;
以上就是Python转码UTF-8报错“’gbk’ codec can’t decode byte 0x80…”,如何解决?的详细内容,更多请关注php中文网其它相关文章!