问题描述
嵌套字典示例为:
x={'a': {'b': [{'mf': 1},{'mf': 2},{'mf': 3},{'mf': 1}]}}
我要删除包含'mf':1的字典
请帮助。
解决方法
x={'a': {'b': [{'mf': 1},{'mf': 2},{'mf': 3},{'mf': 1}]}}
print(x)
for i in x['a']['b']:
for key,value in i.items():
if key=="mf" and value==1:
x['a']['b'].remove(i)
print(x)
输出-
之前-{'a':{'b':[{'mf':1},{'mf':2},{'mf':3},{'mf':1}]}}
之后-{'a':{'b':[{'mf':2},{'mf':3}]}}}
,因此,您正在尝试使用这本新词典:
x = {'a':{'b':[{'mf':2},{'mf':3},{'mf':1}}}}
然后,您需要首先分析数组并像这样获取要删除的字典的位置
index = 0
a ['b']。pop(index)
您也可以尝试在数组中使用remove,但是随后您需要知道要删除哪个元素
a ['b']。remove('mf')
此外,pop的用法与字典相同,只是给出一个键而不是一个索引。 https://www.w3schools.com/python/python_dictionaries.asp https://www.w3schools.com/python/gloss_python_array_remove.asp