我有一个字典,其中包含大量要删除的条目。我可以写一个常规表达式来查找所有条目,但我不知道如何将它们全部删除。
答案 0 :(得分:2)
迭代dict并构建一个只包含你想要保留的元素的新dict:
new_dict = {key: value for key, value in old_dict.iteritems() if keep(key, value)}
您也可以通过使用del
删除旧dict中的项目来执行此操作,但是在迭代它时修改某些内容非常棘手。通常最好不要这样做。
答案 1 :(得分:1)
del
语句正是如此。
def remove(dic, key):
re = dict(dic)
del re[key]
return re
答案 2 :(得分:0)
要删除正则表达式匹配,我们可以使用re.sub(pattern,replace_with,string)
方法,键是top使replace_with
为空字符串,以便匹配替换为空字符串:
例如,此脚本将删除所有非数字字符:
import re
string = "My age is 99"
print re.sub('\D+','',string)
输出:
99