'Str' object has no 'decode' attribute in Python3
I have a problem with the "decode" method in python 3.3.4. This is my code:
for lines in open('file','r'):
decodedLine = lines.decode('ISO-8859-1')
line = decodedLine.split('\t')
But I cannot decode the string for this problem:
AttributeError: 'str' object has no attribute 'decode'
Do you have any ideas? Thanks to
+8
source to share
3 answers
One encodes strings and one decodes bytes.
You have to read the bytes from the file and decode them:
for lines in open('file','rb'):
decodedLine = lines.decode('ISO-8859-1')
line = decodedLine.split('\t')
Fortunately, it open
has an encoding argument that makes this simple:
for decodedLine in open('file', 'r', encoding='ISO-8859-1'):
line = decodedLine.split('\t')
+22
source to share