[英]Removing nested json key-value pair from object by reference in python
我需要从 python json 对象中删除嵌套的键值。 json 中此嵌套对象的路径以字符串形式提供给我。
如果我对对象进行硬编码,我可以使用del
命令执行此操作。 但是,我无法弄清楚如何取消引用字符串以获取对象。
因此,在下面的代码片段中,对象在第一个del
之后没有改变,但在第二个del
之后删除了键值。
input_obj = [
{
"version": "2021a",
"resource": {
"resourceType": "human",
"id": "9451bf03-665c-4b4f-9836-066b4185334c",
"attributes": [
{
"attribute": "hair-color",
"value": "black"
},
{
"attribute": "weight",
"value": "170"
}
]
}
}
]
mypath = "input_obj" + "[0]['resource']['attributes'][0]['value']"
del mypath
del input_obj[0]['resource']['attributes'][0]['value']
第一个del
删除变量mypath
,而不是引用的对象。 第二个del
有效,因为它指的是对象的实际部分。
如何取消引用字符串或以与硬引用相同的方式指向对象?
您是否只是想从层次结构中删除值或删除键值对? 如果没有 del 语句后的输出,很难判断
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.