删除一些列表项中词典
删除字典里面的几个列表项删除一些列表项中词典
嗨, 我有一本字典:
phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}
让我们说,我想删除从12和5从“手机”字典。 有没有办法做到这一点使用“del”功能?
我知道如何做到这一点,使用一个.remove()
phone["third"].remove(12)
phone["third"].remove(5)
但我想知道是否有可能用做德尔()? 谢谢。
编辑:对于所有的这些答复集中在“德尔使用索引,取出使用的精确值”,我重新定义了我的问题:
我想删除列表中的代表第三个关键指标1和2 “手机”字典中的值项目。我怎样才能做到这一点?
你必须通过索引要做到这一点,而不是值:
>>> 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的元素。
http://docs.python.org/2/tutorial/datastructures.html#the-del-statement del是一种通过索引删除值的方法,但是如果需要,您可以先搜索索引。如果你想按价值删除,最好使用删除。
要索引1处删除元素和2个
>>> 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}
手机词典的存储数据,删除列表中的项目。
其他答案 - 尝试获取包含要更改的数据的项目(键值)。从字典中删除它。修改这个项目的值(列表)。然后将它添加到字典
阿米拉你好,是你告诉我: editedList =电话[ “第三”] 德尔editedList [1:3] 电话【 “第三”] = editedList – stgeorge 2013-05-04 16:39:52
您可以将phone [“third”]作为列表对待,因为这是它的评估对象。举例来说,如果你知道你要删除的项目的索引,你可以这样做:
phone["third"][1:3]=[]
或
del phone["third"][1:3]
可以使用del()
或通过筛选它,你可以重新创建列表:
>>> 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}
我根据您的修改更新了此答案。 – 2013-05-04 16:43:41