相关疑难解决方法(0)

我如何懒惰地从Python中的文件/流中读取多个JSON值?

我想从Python中的文件/流中读取多个JSON对象,一次一个.不幸的是json.load(),.read()直到文件结束; 似乎没有任何方法可以使用它来读取单个对象或懒惰地迭代对象.

有没有办法做到这一点?使用标准库是理想的,但如果有第三方库,我会使用它.

目前我将每个对象放在一个单独的行上并使用json.loads(f.readline()),但我真的不想这样做.

示例使用

example.py

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)

in.txt

{"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)

python serialization json

93
推荐指数
7
解决办法
6万
查看次数

标签 统计

json ×1

python ×1

serialization ×1