如何在python中删除重复的JSON对象

时间:2019-03-18 06:58:51

标签: json python-3.x duplicates

我想从JSON文件中删除包含重复的“ file_url”的对象。这样。

{
    "0": {
        "file_url": "apple",
        "name": "apple.jpg"
    },
    "1": {
        "file_url": "dog",
        "name": "dog.jpg"
    },
    "2": {
        "file_url": "apple",
        "name": "apple.jpg"
    },
    "3": {
        "file_url": "cat",
        "name": "cat.jpg"
    },
    "4": {
        "file_url": "tiger",
        "name": "tiger.jpg"
    }
}

这是我的json文件。和数字0和2是相同的东西。因此,我想删除其中一个并用新索引对其进行排序。像这样:

{
    "0": {
        "file_url": "apple",
        "name": "apple.jpg"
    },
    "1": {
        "file_url": "dog",
        "name": "dog.jpg"
    },
    "2": {
        "file_url": "cat",
        "name": "cat.jpg"
    },
    "3": {
        "file_url": "tiger",
        "name": "tiger.jpg"
    }
}

我查找了几个文档,但是没有用。我正在使用Python 3.6,需要帮助。

1 个答案:

答案 0 :(得分:0)

这可能无效,但是您可以对照第一个数组的每个元素检查第二个数组的每个元素。每次获得element [i] == element [x]时,都将从您想要的对象中删除重复项。

编辑:很抱歉没有实际发布任何代码 您可能想要这样的嵌套循环...

 for i in object1:
   for x in object2:
  *check and delete if needed here*

我是堆栈溢出的新手,并且很难正确识别它:p

额外编辑:我真的只是略过了您的问题,却没有意识到您只在处理一个对象。我以为您可能有两个对象,但是如果您复制原始对象,此方法可能会起作用