标签: python json
假设我要处理很多json行,我只关心json行中的特定字段。
{blablabla, 'whatICare': 1, blablabla} {blablabla, 'whatICare': 2, blablabla} ....
有没有办法从这些json行中提取whatICare withoud loads?由于json行非常长,因此从json构建对象可能会很慢。
whatICare
loads
答案 0 :(得分:2)
没有编写自己的解析代码就没有任何可靠的方法。
但请查看ujson!它可以比python内置的json库快10倍,这有点慢。
答案 1 :(得分:0)
不,您必须先加载并解析JSON,然后才能知道内部的内容,并能够过滤掉所需的元素。
话虽如此,如果您担心内存,可以使用ijson这是一个迭代解析器。它不是一次加载所有内容,而是只加载下一次迭代所需的内容。因此,如果您的文件包含一个对象数组,则可以一次加载和解析一个对象,从而减少内存影响(因为您只需要将一个对象保留在内存中,再加上您实际关注的数据)。但它不会变得更快,也不会神奇地跳过你不感兴趣的数据。