我刚发现我的json字符串包含一些特殊字符,例如Pandora ®
。
当我使用它时,我收到此错误'utf8' codec can't decode byte 0xae in position: invalid start byte
:
json.loads(str_to_load)
我试过这个来解决这个问题:
json.loads(unicode(str_to_load), "ISO-8859-1")
显然,这似乎也不起作用。如何解决这个问题?
json文件太大,无法在此处上传。
答案 0 :(得分:6)
您可以在json.loads
中指定编码:
json.loads(str_to_load, encoding="ISO-8859-1")
答案 1 :(得分:1)
默认情况下,方法json.dumps()中的ensure_ascii标志设置为True。 要解决此问题,请将此标志设置为False:
json.dumps(unicode(str_to_load), ensure_ascii = False)