【发布时间】:2021-11-15 23:11:36
【问题描述】:
我有这个字典项目列表。我想通过将其与字典项进行比较来从列表中删除特定的字典条目
items =
[
{'label': 'Canary Wharf', 'parent': {'label': 'Canada Water', 'parent': None}},
{'label': 'Bermondsey', 'parent': {'label': 'Canada Water', 'parent': None}},
{'label': 'Surrey Quays', 'parent': {'label': 'Canada Water', 'parent': None}},
{'label': 'Rotherhithe', 'parent': {'label': 'Canada Water', 'parent': None}},
{'label': 'Victoria', 'parent': {'label': 'sth', 'parent': None}}, {'label': 'tth', 'parent': {'label': 'sth', 'parent': None}},
{'label': 'stu', 'parent': {'label': 'sth', 'parent': None}}, {'label': 'tth', 'parent': {'label': 'sth', 'parent': None}}
]
我有一个变量
to_delete = {'label': 'Surrey Quays', 'parent': {'label': 'Canada Water', 'parent': None}}}
我想做,
items.pop(to_delete)
OR
items.delete(to_delete)
得到,
>>>print(items)
[
{'label': 'Canary Wharf', 'parent': {'label': 'Canada Water', 'parent': None}}, {'label': 'Bermondsey', 'parent': {'label': 'Canada Water', 'parent': None}},
{'label': 'Victoria', 'parent': {'label': 'sth', 'parent': None}}, {'label': 'tth', 'parent': {'label': 'sth', 'parent': None}},
{'label': 'stu', 'parent': {'label': 'sth', 'parent': None}}, {'label': 'tth', 'parent': {'label': 'sth', 'parent': None}}
]
【问题讨论】:
-
items.remove(to_delete) -
显示“AttributeError: 'list' object has no attribute 'find'”
-
这就是我删除那条评论的原因。
-
items.remove(to_delete) 没有删除该项目。
-
我的错,它正在删除,我使用 print(items.remove(to_delete)),而不是打印之前和之后的列表。
标签: python python-3.x list dictionary