d = {'a1':1, 'a2':2,'a3':3,'a4':1,'a5':1,'b':2, 'c':3}
for k, v in d.copy().items():
if 'a' in k:
del d[k]
print(d)
如果键或值满足一定的要求,我想删除元素,如上所述,其中包含'a'的键将被删除。
特别是,我可以不使用copy()函数做同样的事情吗?
编辑:根据建议,我采用了这种方式:
for k in list(d):
if 'a' in k:
del d[k]
创建一个没有要过滤的键的新字典
d = {'a1':1, 'a2':2,'a3':3,'a4':1,'a5':1,'b':2, 'c':3}
filtered_d = {k: v for k,v in d.items() if 'a' not in k}