我需要某种循环或过滤器来删除每个不包含字符串“id”的条目
someDict = { 'id1': [('id1'), ('book'), ('sauce'), ('pencil')],
'id2': [('id2'), ('id4'), ('id5'), ('pens') , ('id6'), ('stuff')],
'id3': [('id3'), ('id81'), ('van'), ('garage')]}
因此,之后,它将看起来像这样:
someDict = { 'id1': [('id1')],
'id2': [('id2'), ('id4'), ('id5'), ('id6')],
'id3': [('id3'), ('id81') ]}
我简直是不知所措。我已经想了三个小时了。任何帮助都将不胜感激
我试过这个,但我不擅长使用这样的过滤器。它应该删除字典中没有“id”的所有内容,但它不起作用
#someDict = { k : v for k, v in someDict.items() if 'id' in v }
然后,我试图找出一个循环,但也无法让它工作
for key, value in someDict.items():
for x in value:
if not "id" in x:
value.remove(x)```
这应该起作用:
我不知道你为什么在清单里写括号。如果要创建元组,请确保在元组末尾添加一个
,
,如下所示:('id1',)
。如果这是你想要做的,考虑这个代码代替:试试这个:
您不需要迭代完整的项(键和值),只需获取所有值,然后检查每个值元素的条件
相关问题 更多 >
编程相关推荐