如果我有字典,并且想删除其中值为空列表的条目[],我将如何去做?

我试过了:

for x in dict2.keys():
    if dict2[x] == []:
        dict2.keys().remove(x)

但这没用。

最佳答案

.keys()提供对字典中键列表的访问,但是对其的更改不会(必须)反射(reflect)在字典中。您需要使用del dictionary[key]dictionary.pop(key)删除它。

由于某些版本的Python中的行为,您需要创建 key 列表的副本,以使事情正常进行。因此,如果将代码编写为:

for x in list(dict2.keys()):
    if dict2[x] == []:
        del dict2[x]

关于python - 删除无值的字典条目-Python,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6307394/

10-09 00:51