gpt4 book ai didi

python - 删除列表中的多个词典

转载 作者:太空狗 更新时间:2023-10-30 00:29:24 24 4
gpt4 key购买 nike

我一直在尝试删除列表中的多个词典,但一次只能删除一个。

下面是我正在处理的主要代码。记录是字典列表。我想删除其中有 0 的字典。

Records = [{'Name':'Kelvin','Price': 0},{'Name': 'Michael','Price':10}]

我想删除价格为0的字典

def deleteUnsold(self):
for d in records:
for key, value in d.items():
if d['Price'] == 0:
records.remove(d)

最佳答案

使用 list comprehension使用 if 条件

>>> Records = [{'Name':'Kelvin','Price': 0},{'Name': 'Michael','Price':10}]
>>> [i for i in Records if i['Price'] != 0]
[{'Price': 10, 'Name': 'Michael'}]

查看 if/else in Python's list comprehension?了解有关在列表中使用条件的更多信息 理解。


请注意 [如前所述 below ] 您也可以不检查值 0。然而,如果 PriceNone,这也适用,因此如果您不确定 Price 的值的数据类型,您可以使用第一个备选方案>

>>> [i for i in Records if i['Price']]
[{'Price': 10, 'Name': 'Michael'}]

关于python - 删除列表中的多个词典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34763208/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com