【发布时间】:2026-02-20 08:40:01
【问题描述】:
我是 Python 的初学者。 Python 3.7.6
import json
fil='numbers.json'
num=[]
with open(fil,'r') as file :
for obj in file :
num.append(json.load(obj))
print(num)
这是 JSON 文件:
"45""56""78""75"
这是我在运行代码时遇到的错误
Traceback (most recent call last):
File "C:/Users/Dell/PycharmProjects/untitled/tetu.py", line 6, in <module>
num.append(json.load(obj))
File "C:\Users\Dell\AppData\Local\Programs\Python\Python38\lib\json\__init__.py", line 293, in load
return loads(fp.read(),
AttributeError: 'str' object has no attribute 'read'
知道如何解决这个问题吗?
提前致谢
【问题讨论】:
-
您帖子中的示例:
"45""56""78""75"绝对不是 JSON 格式。 -
这甚至不是一个正确的 JSON 文件,而且还不清楚您希望代码如何工作,甚至超出此范围。 JSON 旨在一次加载,而不是逐行加载。任何给定的有效 JSON 文件行都可能不是有效的 JSON。
-
您好,欢迎阅读,请阅读关于使用 JSON 的热门信息,w3schools.com/python/python_json.asp 您也可以在此处验证您的 JSON jsonlint.com/?code=
-
"line-by-line" JSON 存在:en.wikipedia.org/wiki/JSON_streaming#Line-delimited_JSON 和例如对于某种日志文件,它是一种合理的内部格式吗?
标签: python json python-3.x