我正在尝试使用python .loads()
函数读取保存在文本文件中的JSON文件。我稍后将解析JSON以获取特定值。
我一直收到这个错误消息。当我谷歌它,没有结果。
Unicode解码错误:“asphalt”编解码器无法解码位置> 85298中的字节0xc 2:序号不在范围内(128)
以下是完整的错误消息:
回溯(最近的呼叫最后一次):File“.../FirstDegreeKanyeScript.py“,>line 10,in data=json.load(data_file)File >"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/json/in>it.py”,line 265,in load return loads(fp.read(),File >"/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/encodings>/ascii.py“,line 26,in decode return codecs. asphp_decode(input,>self.errors)[0] UnicodeDecodeError:“asphalt”编解码器无法解码位置85298中的字节0xc 2>:序号不在范围内(128)
下面是我的代码:
import json
from pprint import pprint
with
open("/Users/.../KanyeAllSongs.txt") as data_file:
data=json.load(data_file)
pprint(data)
我尝试在json.load
下添加data.decode('utf-8')
,但仍然得到相同的错误。
有什么想法吗?
2条答案
按热度按时间46scxncf1#
在
open
调用中指定编码。2cmtqfgy2#
在谷歌上找到的在我的情况下,所有结束了:
我添加了
rb
以二进制模式打开文件。