python 2.7 print 的數據中若包括中文,打印則會報錯UnicodeDecodeError: 'gbk' codec can't decode bytes in position 459-460: illegal multibyte sequence,python
錯誤緣由:將一個字符串,經過gbk的方式,去解碼,想要得到Unicode字符串出錯了,通常是由於解碼的方式與其原編碼方式不一致所致,好比該數據編碼格式是utf-8,你卻用gbk去解碼,固然出錯,「解碼方式和編碼方式要保持一致」,你應該用utf-8的解碼方式去解碼utf-8編碼的數據,才能成功解碼爲unicode類型的數據。編碼
具體解決辦法:spa
一、經過encodetype=chardet.detect(data)['encoding']查看打印的數據data的編碼格式encodetype;code
二、經過data.decode('encodetype')解碼該數據,將成功解碼爲unicode類型的數據。blog
三、示例:utf-8
這樣print就能夠正常打印包含中文的數據了。unicode