我需要用python写一个代码,通过索引删除字典中的多个项目
我有一个字典和一个集合:
字典是:
{'Page': ['2', '0-50', '0', '0-20', '0-20'], 'PageSize': [1, 50, 1, 20, 20]}
集合是:
{3, 4}
我想创建一个新的字典,从Set
中删除索引。所以最终的字典应该是这样的:
{'Page': ['2', '0-50', '0'], 'PageSize': [1, 50, 1]}
你可以这样做:
data = <Your first dictionary>
indicesto_remove = <your set of indices>
data = {
k, [v for i, v in enumerate(d) if i not in indices_to_remove]
for k, d in data.items()
}
它遍历字典中的条目,并从列表中过滤出具有指定索引的值。
还要注意的是,如果你的索引有一些更简单的结构,你可以有更简单的解决方案。例如,要删除最后两个值,您可以使用d[:-2]
.