我想从Python中的文件/流中读取多个JSON对象,一次一个.不幸的是json.load(),.read()直到文件结束; 似乎没有任何方法可以使用它来读取单个对象或懒惰地迭代对象.
有没有办法做到这一点?使用标准库是理想的,但如果有第三方库,我会使用它.
目前我将每个对象放在一个单独的行上并使用json.loads(f.readline()),但我真的不想这样做.
import my_json as json
import sys
for o in json.iterload(sys.stdin):
print("Working on a", type(o))
Run Code Online (Sandbox Code Playgroud)
{"foo": ["bar", "baz"]} 1 2 [] 4 5 6
Run Code Online (Sandbox Code Playgroud)
$ python3.2 example.py < in.txt
Working on a dict
Working on a int
Working on a int
Working on a list
Working on a int
Working on a int
Working on a int
Run Code Online (Sandbox Code Playgroud)