python - 如何使用python删除json文件中的特定字段
问题描述
1.我试图使用 python 删除 JSON 文件中的特定键及其值。这是 JSON 文件结构:
[
{
"_id": {
"$oid": "6066af7bcb0716461578fa70"
},
"FileName": "copy_of_ex_fts.csv",
"BriefInfo": "",
"Size": "13.532KB",
"UserName": "12795757"
"data":"123"
}
]
我编写了一些代码来删除键“数据”和“用户名”及其值,但我只能删除数据及其值,而不是“用户名”。有人可以给我一些修复此错误的建议吗?
2.这里是实现代码。首先打开 JSON 文件并加载数据。然后检查关键“数据”和“用户名”是否在其中。如果是,请删除这些键及其值。
jsonFile = open('./dataNewJson.json', 'r')
values = json.load(jsonFile)
for element in values:
if 'data' in element:
del element['data']
print("check")
elif 'BriefInfo' in element:
del element['BriefInfo']
elif 'UserName' in element:
print("SSS")
del element['UserName']
values = dumps(values, indent = 2)
解决方案
for element in values:
if 'data' in element:
del element['data']
print("check")
if 'BriefInfo' in element:
del element['BriefInfo']
if 'UserName' in element:
print("SSS")
del element['UserName']
elif
需要if
。在每次迭代data
中首先找到它,因此它属于该 if 语句并跳过其他语句。
推荐阅读
- c# - 如何找到知道孩子的父元素
- c# - 为日期格式配置 TextFormField
- angular - 使用标头身份验证在 Angular 中下载大文件
- json - 将 JSON Schema 中的数组映射到 OWL
- c# - 页面无法加载,我收到“Newtown.json”警告消息
- python-3.x - 如何从回溯中提取最后一条消息并保留原始堆栈跟踪
- kotlin - java.lang.LinkageError:方法 void GameHistoryViewModel.a() 覆盖类 Landroidx/lifecycle/ViewModel 中的最终方法;出现在 base.apk 中)
- python - 使用 psutil.Process.memory_info 内存使用与 Pandas.memory_usage 不同
- android - 错误:找不到 com.android.location.build:gradle:3.5.0
- php - 如何在 laravel 中创建一个全局变量