Python JSON转储对象列表。

时间:2014-05-15 01:38:04

标签: python json

我有一个词典列表,如何使用JSON每个字典一行转储它?

我试过了:

json.dump( d, open('./testing.json','w'), indent=0)

其中d是词典列表。但这会对每个(键,值)对进行换行。我希望每行字典在一行中。我该怎么做?

谢谢

1 个答案:

答案 0 :(得分:6)

在将其写出之前,您可以将其转换为具有该格式的字符串。这可以通过列表理解和连接的组合来完成:

strs = [json.dumps(innerdict) for innerdict in d]
s = "[%s]" % ",\n".join(strs)
open('./testing.json','w').write(s)

在一行中:

open('./testing.json','w').write("[%s]" % ",\n ".join(json.dumps(e) for e in d))

或:

open('./testing.json','w').write("[%s]" % ",\n ".join(map(json.dumps, d)))