Archive

Python "codec can't decode byte 0x99"

 

 

The String Type

>>> b'\x80abc'.decode("utf-8","strict")Traceback(most recent call last):File"<stdin>", line 1,in?UnicodeDecodeError:'utf8' codec can't decode byte 0x80 in position 0:
                    unexpected code byte
>>> b'\x80abc'.decode("utf-8", "replace")
'\ufffdabc'
>>> b'\x80abc'.decode("utf-8", "ignore")
'abc'

 


 

Converting to Bytes

>>> u = chr(40960)+'abcd'+ chr(1972)>>> u.encode('utf-8')
b'\xea\x80\x80abcd\xde\xb4'>>> u.encode('ascii')Traceback(most recent call last):File"<stdin>", line 1,in?UnicodeEncodeError:'ascii' codec can't encode character '\ua000' in
                    position 0: ordinal not in range(128)
>>> u.encode('ascii', 'ignore')
b'abcd'
>>> u.encode('ascii', 'replace')
b'?abcd?'
>>> u.encode('ascii', 'xmlcharrefreplace')
b'&#40960;abcd&#1972;'