额外数据:第 1 行第 2 列 [重复]
Posted
技术标签:
【中文标题】额外数据:第 1 行第 2 列 [重复]【英文标题】:Extra Data: Line 1 column 2 [duplicate] 【发布时间】:2018-06-28 04:19:31 【问题描述】:我知道之前有人问过这个问题,所以这肯定会被标记为重复,但无论如何。我已经坚持了好几天了,其他解决方案都没有做任何事情。我要做的就是将 json 加载到 python 程序中。
尝试 1:
def get_post(number, target):
#path = str(number) + ".json"
post = json.loads('1.json')
return post
尝试 2:
with open("1.json") as infile: post = json.loads("1.json")
两者都不起作用。我明白了
File "posthandler.py", line 34, in <module>
with open("1.json") as infile: post = json.loads("1.json")
File "/usr/lib/python3.6/json/__init__.py", line 354, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.6/json/decoder.py", line 342, in decode
raise JSONDecodeError("Extra data", s, end)
这是我的 json:
"name" : "test"
注意,我查看了文件的十六进制,似乎没有什么不妥
【问题讨论】:
您应该使用json.load
而不是json.loads
。前者用于将文件处理程序加载到 json 中,后者用于将字符串转换为 json
我都试过了。
那么我将如何使用路径
【参考方案1】:
让我在答案中重申我的观点:
这两种尝试几乎都是正确的,但您应该在 load
函数调用中使用文件处理程序。
试试这个:
with open("1.json", "r") as infile:
post = json.load(infile)
【讨论】:
我完全忘了设置阅读模式。非常感谢!以上是关于额外数据:第 1 行第 2 列 [重复]的主要内容,如果未能解决你的问题,请参考以下文章