簡體   English   中英

通過python中的引用從對象中刪除嵌套的json鍵值對

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM