python - 使用 Python 在 JSON 对象中逐行插入值
问题描述
我正在尝试使用 Python 逐行将新字段及其值写入现有 JSON 对象,但它会不断创建另一个键。这是一个示例代码:
# my object
data_set = {'fruits':[]}
fruit_state = 'eatable'
# the values i want to insert line by line into the same JSON object
data_set['fruits'].append({'apple' : fruit_state})
data_set['fruits'].append({'strawberry' : fruit_state})
data_set['fruits'].append({'lemon' : fruit_state})
json_dump = json.dumps(data_set, indent=4)
print(json_dump)
quit()
这给了我:
{
"fruits": [
{
"apple": "eatable"
},
{
"strawberry": "eatable"
},
{
"lemon": "eatable"
}
]
}
但我试图得到一些东西,所以结果是:
{
"fruits": [
{
"apple": "eatable",
"strawberry": "eatable",
"lemon": "eatable"
}
]
}
我可以将每个值放在一个数组中并传递它,但我真的想逐行插入这些值。你有什么想法吗?提前致谢。
解决方案
看起来你最好fruits
直接持有子对象,而不是包含一个列表。然后你可以直接赋值:
data_set = {'fruits': {}}
data_set['fruits']['apple'] = fruit_state
data_set['fruits']['strawberry'] = fruit_state
data_set['fruits']['lemon'] = fruit_state
推荐阅读
- c++ - 如何在c ++中循环使用改变频率的声音?
- python - 根据另一列中的值估算熊猫数据框的缺失列?
- javascript - join() 不是一个函数 javascript
- python - Django 相当于 MySQL 中的 SELECT * GROUP BY
- android - 领域是否会在 android 中创建内存泄漏
- python - PY4E-大海捞针
- node.js - Nodejs如何从https服务器获取TLS对象
- angular - 在 ng 智能表中显示图像
- ubuntu - 尝试介子构建时依赖项 glib-2.0 的版本无效
- html - 在没有 php 的情况下向网页添加代码片段