我在 python 3.3.4 中的"解码"方法遇到一些问题。

for lines in open('file','r'):
    decodedLine = lines.decode('ISO-8859-1')
    line = decodedLine.split('\t')

但是我无法解码此问题的行:

AttributeError: 'str' object has no attribute 'decode'

你有什么想法?谢谢

答案

编码 字符串,一个解码字节。

您应该从文件中读取字节并对其进行解码:

for lines in open('file','rb'):
    decodedLine = lines.decode('ISO-8859-1')
    line = decodedLine.split('\t')

幸运的是open有一个编码的参数,这使它变得容易:

for decodedLine in open('file', 'r', encoding='ISO-8859-1'):
    line = decodedLine.split('\t')

来自: stackoverflow.com