Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 删除字典中的一些列表项_Python_List_Dictionary_Del - Fatal编程技术网

Python 删除字典中的一些列表项

Python 删除字典中的一些列表项,python,list,dictionary,del,Python,List,Dictionary,Del,删除字典中的一些列表项 嗨, 我有一本字典: phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400} 假设我想从“电话”字典中删除12和5。 有没有办法使用“del”函数来实现这一点 我知道如何使用.remove()实现这一点 但是我想知道是否可以使用del()来实现它? 多谢各位 编辑:对于所有集中于“del使用索引,remove使用精确值”的回复,我正在重新定义我的问题: 我想删除列表中表示“phone”字典

删除字典中的一些列表项

嗨, 我有一本字典:

phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}
假设我想从“电话”字典中删除12和5。 有没有办法使用“del”函数来实现这一点

我知道如何使用.remove()实现这一点

但是我想知道是否可以使用del()来实现它? 多谢各位

编辑:对于所有集中于“del使用索引,remove使用精确值”的回复,我正在重新定义我的问题:

我想删除列表中表示“phone”字典中第三个键值项的索引1和索引2。如何执行此操作?

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}
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}

访问电话字典的值,删除列表中的项


其他答案-尝试获取包含要更改的数据的项(键、值)。从字典中删除它。修改此项目的值(列表)。然后将其添加到字典

访问电话字典的值,删除列表中的项目


其他答案-尝试获取包含要更改的数据的项(键、值)。从字典中删除它。修改此项目的值(列表)。然后将其添加到字典中

您必须通过索引而不是值来执行此操作:

>>> 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的元素。

您必须通过索引而不是值来执行此操作:

>>> 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的元素。

您可以将phone[“third”]视为列表,因为这是它的计算结果。例如,如果知道要删除的项的索引,可以执行以下操作:

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

您可以将phone[“third”]视为一个列表,因为这就是它的计算结果。例如,如果知道要删除的项的索引,可以执行以下操作:

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}
您可以使用
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}

好的,让我们重新表述我的问题:我想删除列表中表示“phone”字典中第三个键值项的索引1和2。我该怎么做?@stgeorge我已经在我的回答中添加了这一点好吧,让我们重新表述我的问题:我想删除列表中代表“phone”字典中第三个键值项的索引1和2。我怎么能这么做呢?@stgeorge我已经在我的回答中加上了这个。hi Amira,这就是你告诉我的:editedList=phone[“third”]del editedList[1:3]phone[“third”]=editedList[1:3]del editedList[1:3]del editedList[1:3]del editedList]phone[“third”]=editedList这正是我要找的。谢谢你,丹萨尔莫。顺便说一下,“del”周围的“()”是Python3的一个特性,或者说?我有Python2.7,它对我很有用。你能接受这个答案吗?是的,我能。就在我目前学习python的书中(我没有编程背景),del函数没有括号。使用空格:del b[phone][1:3]但我现在看到使用oarentheses时效果是一样的。
del
是一个语句,而不是一个函数,这就是为什么括号是多余的谢谢jamylak。顺便说一句,为什么代码块的四个空格缩进在注释中不起作用?他们在首发位置上做得很好,这正是我想要的。谢谢你,丹萨尔莫。顺便说一下,“del”周围的“()”是Python3的一个特性,或者说?我有Python2.7,它对我很有用。你能接受这个答案吗?是的,我能。就在我目前学习python的书中(我没有编程背景),del函数没有括号。使用空格:del b[phone][1:3]但我现在看到使用oarentheses时效果是一样的。
del
是一个语句,而不是一个函数,这就是为什么括号是多余的谢谢jamylak。顺便说一句,为什么代码块的四个空格缩进在注释中不起作用?他们在起跑线上做得非常好。