我有一个字典,我想删除字典中的每一行。例如,我想在整个字典中删除这个。{'date': '', 'obsolete': False}。
[{'date': '', 'obsolete': False},
{'date': '2021-01-02',
'obsolete': True,
'sku': '100940478',
'warehouse_location': 'lagos',
'quantity': '23'},
{'date': '', 'obsolete': False},
{'date': '2020-11-09',
'obsolete': False,
'sku': '100940479',
'warehouse_location': 'lagos',
'quantity': '84'},
{'date': '', 'obsolete': False},
{'date': '2021-01-15',
'obsolete': True,
'sku': '100940480',
'warehouse_location': 'oyo',
'quantity': '11'}]发布于 2021-07-21 08:10:25
字典中没有行的概念。不过,您可以删除某些密钥。请参阅How can I remove a key from a Python dictionary?
发布于 2021-07-21 10:01:08
我想这可能就是你要做的。它会删除列表中所有内容为{'date': '', 'obsolete': False}的字典的
from pprint import pprint
OBSOLETE = {'date': '', 'obsolete': False}
dict_list = [{'date': '', 'obsolete': False},
{'date': '2021-01-02',
'obsolete': True,
'sku': '100940478',
'warehouse_location': 'lagos',
'quantity': '23'},
{'date': '', 'obsolete': False},
{'date': '2020-11-09',
'obsolete': False,
'sku': '100940479',
'warehouse_location': 'lagos',
'quantity': '84'},
{'date': '', 'obsolete': False},
{'date': '2021-01-15',
'obsolete': True,
'sku': '100940480',
'warehouse_location': 'oyo',
'quantity': '11'}]
cleaned_list = [d for d in dict_list if d != OBSOLETE]
pprint(cleaned_list, sort_dicts=False)输出:
[{'date': '2021-01-02',
'obsolete': True,
'sku': '100940478',
'warehouse_location': 'lagos',
'quantity': '23'},
{'date': '2020-11-09',
'obsolete': False,
'sku': '100940479',
'warehouse_location': 'lagos',
'quantity': '84'},
{'date': '2021-01-15',
'obsolete': True,
'sku': '100940480',
'warehouse_location': 'oyo',
'quantity': '11'}]发布于 2021-07-21 08:33:17
让我们首先将你的数组赋给一个变量:
data = [
{'date': '', 'obsolete': False},
{'date': '2021-01-02', 'obsolete': True, 'sku': '100940478', 'warehouse_location': 'lagos', 'quantity': '23'},
{'date': '', 'obsolete': False},
{'date': '2020-11-09', 'obsolete': False, 'sku': '100940479', 'warehouse_location': 'lagos', 'quantity': '84'},
{'date': '', 'obsolete': False},
{'date': '2021-01-15', 'obsolete': True, 'sku': '100940480', 'warehouse_location': 'oyo', 'quantity': '11'}
]现在我们可以遍历数据数组中的每个元素(字典),根据它们的索引键名删除所需的元素,因为字典的元素是无序的:
for dict_item in data:
dict_item.pop('date')
dict_item.pop('obsolete')然后打印出数据变量以查看结果:
print(data) # Will output the array of dictionaries without the 'date' and 'obsolete' keyshttps://stackoverflow.com/questions/68462549
复制相似问题