Python中文
首页
教程
问答
标签
搜索
登录
注册
从JSON文件中删除子元素
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我认为从JSON嵌套的dict中删除一个键很简单,但最终还是出现了错误。 我有如下所示的JSON文件,并希望从其元素<code>"Codes"</code>中删除一个键<code>"8888"</code></p> <p>dummy.json:</p> <pre><code>{ "Codes": { "8888": "code1|18888", "9999": "code2|19999", "7777": "code3|17777" }, "Names": { "Site1": "Site1|18888", "Site2": "Site2|19999", "Site3": "Site3|17777" } } </code></pre> <p>Python代码:</p> <pre><code>import json with open('dummy.json') as json_data: data = json.load(json_data) for element in data["Codes"]: #del element['8888'] element.pop('8888', None) with open('dummy.json'), 'w') as outfile: json.dump(data, outfile) </code></pre> <p>结果:</p> <p>在第一次尝试中,我尝试了<code>del element['8888']</code>,它抛出<code>TypeError: 'str' object does not support item deletion</code></p> <p>根据发现的<a href="https://stackoverflow.com/questions/36606930/delete-an-element-in-a-json-object/">here</a>示例,我尝试了<code>element.pop('8888', None)</code>,它抛出了<code>AttributeError: 'str' object has no attribute 'pop'</code>错误</p> <p>我不确定我犯了什么错误,请帮忙</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>试试这个:</p> <pre><code>with open('test.json') as fp: data = json.loads(fp.read()) del data['Codes']['8888'] </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在乒乓球比赛中预测球的轨迹,对于AI球拍预测?
2 回答
如何在乒乓球游戏中阻止球
2 回答
如何在乘法和模中不乘空间?
10 回答
如何在乘法和除以2个不同的数字之间进行交换?
8 回答
如何在也是数据一部分的单个字符上拆分大字符串
4 回答
如何在乾草堆中找到針,有更好的解決方案嗎?
3 回答
如何在事件wxWidgets中传递自定义数据
10 回答
如何在事件中使用lambda i=i?
4 回答
如何在事件中心只接收最近的数据
5 回答
如何在事件发生之前保持云函数运行?
5 回答
如何在事件发生后使页面重定向到同一页面
6 回答
如何在事件回调之间保持python生成器的状态
9 回答
如何在事件处理程序(pythonsocket、sphinx)中保留docstring
1 回答
如何在事件处理程序中更改wxRichTextCtrl的光标位置?
9 回答
如何在事件处理程序中访问外部对象?
7 回答
如何在事件循环中将协程打包为正常函数?
9 回答
如何在事件循环之外运行协同程序?
8 回答
如何在事件循环结束时为并发未来的所有线程调用类方法?
8 回答
如何在事件文件中只保留一份摘要?
8 回答
如何在事件模板中添加事件
10 回答