当前位置: 首页 > 面试题库 >

删除对象数组中的JSON属性

戚良弼
2023-03-14
问题内容

我有一个要在Python中清理的JSON数组。我要删除该imageData属性:

data.json

[{"title": "foo", "imageData": "xyz123"},
{"title": "bar", "imageData": "abc123"},
{"title": "baz", "imageData": "def456"}]

我正在设置列表理解以删除该属性,但是我不确定如何创建关注以下内容的变量imageData

import json

with open('data.json') as json_data:
    data = json.load(json_data)
    clean_data = [ item for item in data if not item['imageData'] ]
    # Write `clean_data` to new json file

当我print理解列表时,它返回一个空数组。我必须纠正什么才能使其正常工作?


问题答案:

解决您的问题的一种简单方法是使用以下方法删除不需要的密钥del

import json

with open('data.json') as json_data:
    data = json.load(json_data)
    for element in data: 
        del element['imageData']

您应该添加一些安全检查,但是您知道了。



 类似资料:
  • 问题内容: 我想从数组中的每个对象中删除该属性。有没有比使用循环并从每个对象中删除它更好的方法了? 似乎应该有一种使用方式,或其他方式。我不知道。有想法吗? 问题答案: 唯一的其他方法是修饰,实际上是循环。 例如 : 笔记: 如果要与IE8兼容,则需要forEach的垫片。正如您提到prototype一样,prototype.js也有一个shim。 是最糟糕的“优化杀手”之一。使用它经常会破坏应用

  • 我想从数组中的每个对象中删除属性。有没有比使用循环并从每个对象中删除它更好的方法? 似乎应该有一种方法来使用或其他东西。我不知道。想法?

  • 问题内容: 如何通过匹配对象属性从数组中删除对象? 请只使用本机JavaScript。 我在使用接头时遇到麻烦,因为每次删除的长度都会减少。使用克隆并在原始索引上进行拼接仍然会给您带来长度减少的问题。 问题答案: 我以为你用过这样的东西? 修复bug所需要做的就是在下一次减少,然后(也可以选择向后循环): 为了避免线性时间删除,可以编写要 保留 在数组上的数组元素: 为了避免在现代运行时中进行线性

  • 问题内容: 我有一个看起来像这样的数组: 而且我需要删除重复项,以便保留类似以下内容: 我尝试安装underscore.js并使用._uniq,但这似乎仅在对象中出现一对时才起作用。我似乎无法使它跨多个键工作。 当我尝试类似的东西: 我只得到前三个唯一值(每个年级一个)。但是我需要所有年级和领域的唯一值。是否有一种简单的方法将两个键都馈给_.uniq函数? 最终,我需要一个列表,其中每个唯一的等级

  • } 现在,我的要求是当我单击“删除列”时,它会进入此方法,并且我想删除与之关联的特定列和行。 提前谢谢你的帮助。

  • 问题内容: 我有一个JSON: 我试图删除所有以 “ umb_” 开头的属性。这在json.net中可能吗? 输出将是这样的: 使用删除我能够做到,但是不能一次全部完成。 有什么建议吗? 问题答案: 您可以先解析字符串: 更新 或: 更新#2 您可以在子句中指定更多条件: 要么 或任何您需要的。