Python dict键+列表删除

时间:2016-06-30 00:03:58

标签: python list dictionary

有没有办法在一个命令中制作一个不包含特定字典的字典列表?

使用两个命令可以完成:

aDict = {'a': 'cat', 'b': 'dog', 'c': 'cow'}
list1 = aDict.keys()
list1.remove('b')

我正在寻找像list1 = aDict.keys().remove('b')这样的人。我知道这不起作用,但有效吗?

2 个答案:

答案 0 :(得分:3)

您可以使用列表推导来迭代结果。例如:

list1 = [key for key in aDict if key != 'b']

会这样做。

答案 1 :(得分:1)

您可能正在寻找的是列表理解:

list1 = [key for key in aDict.keys() if key != 'b']

那就是说,正确的答案可能就是使用你提供的例子。 Python样式指南建议编写代码以最大化您正在做的事情的显而易见性。除非有充分的理由在单行中进行,否则需要更长的代码,以使您的意图更清晰。