关于python:删除字典中的一些列表项

Deleting a few list items inside of dictionary

删除字典中的一些列表项

你好,我有一本字典:

1
phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}

假设我想从"电话"字典中删除12和5。有没有一种使用"del"函数的方法?

我知道如何使用.remove()执行此操作。

1
2
phone["third"].remove(12)
phone["third"].remove(5)

但我想知道是否可以使用del()来完成它?谢谢您。

编辑:对于所有专注于"del uses index,remove uses the exact value"的回复,我将重新定义我的问题:

我想删除列表中表示"phone"字典中第三个键值项的索引1和2。我该怎么做?


你需要这样做,而不是价值的指标:

1
2
3
4
>>> phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}
>>> del(phone["third"][1:3])
>>> phone
{'second': 200, 'fourth': 400, 'third': [10, 38], 'first': 100}

这删除位置1和2的元素的列表。


你可以使用del()或你可以重新创建它:通过过滤列表

1
2
3
4
>>> phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}
>>> phone['third'] = [x for x in phone['third'] if x not in (12,5)]
>>> phone
{'second': 200, 'fourth': 400, 'third': [10, 38], 'first': 100}


你可以把电话[ ]"三"作为一个战略是什么,因为它evaluates。例如,如果你知道你想看到的项目删除,你可以做的:

1
phone["third"][1:3]=[]

1
del phone["third"][1:3]


手机字典访问值的列表项,删除。

其他答案尝试把item(键,值)含数据你想改变。删除它从字典。修改此项的值(列表)。它然后添加到字典


docs.python.org http:/ / / / / 2的datastructures.html教程# del语句删除一个索引值的方式来删除不需要的,你可以,如果你想搜索指数第一。更好,如果你想使用remove删除的价值。

要删除的元素在索引1和2

1
2
3
4
5
>>> phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}
>>> del phone["third"][1]
>>> del phone["third"][2]
>>> phone
{'second': 200, 'fourth': 400, 'third': [10, 5], 'first': 100}