![](/img/trans.png)
[英]How to create a JSON file from several dictionaries and one list in python
[英]How to create newline delimited json-lines file from list of python dictionaries
我正在嘗試創建一個 JSON 行的數據文件,以便與 google cloud AI 平台對在線預測的要求兼容。
現在我有每個數據點的字典列表。 它看起來像這樣:
data = [{'values': [0,1,0], 'key': 0}, {'values': [1,1,0], 'key': 1}]
我使用以下代碼將此數據導出到data.json :
import json
json_filepath = "data.json"
with open(json_filepath, 'w') as f:
json.dump(data, f)
問題是,這個data.json文件看起來就像我的數據(即字典列表)。 如何使這個data.json文件成為列表中每個字典的換行分隔集合? 換句話說,我怎樣才能讓它看起來像這樣:
{'values': [0,1,0], 'key': 0}
{'values': [1,1,0], 'key': 1}
您可以遍歷數組並轉儲每個對象,后跟一個新行'\\n'
:
with open(json_filepath, 'w') as f:
for d in data:
json.dump(d, f)
f.write('\n')
或者,您可以使用json.dumps
、 str.join
和map
使用json.dumps
:
with open(json_filepath, 'w') as f:
f.write('\n'.join(map(json.dumps, data)))
with open(json_filepath, "w") as f:
for datum in data:
f.write(json.dumps(datum))
f.write("\n")
我還應該提到一般這被稱為“JSON 行”數據格式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.