簡體   English   中英

從列表中彈出或刪除字典項

[英]Pop or Delete a Dictionary item from list

我有這個字典項目列表。 我想通過將它與字典項進行比較來從列表中刪除特定的字典條目

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

您似乎正在嘗試刪除一組項目。 你的to_delete實際上是一個字典元組,所以要刪除它們,只需將它們解包到單獨的變量中,例如:

delete1, delete2 = to_delete
items.remove(delete1)
items.remove(delete2)

或者,您可以保留一個變量並通過以下方式完成相同的操作:

items.remove(to_delete[0])
items.remove(to_delete[1])

Python中的刪除方法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM