从列表中删除元素

时间:2012-02-18 15:20:50

标签: python filter list-comprehension

我有一个变量:

x = 4

我有一个清单:

list = [{'name': u'A', 'value': '1'}, {'name': u'B', 'value': '4'}, {'name': u'C', 'value': '2'}]

如何在列表中排除/删除value = x?

的元素

1 个答案:

答案 0 :(得分:8)

list comprehension是完美的。

[ k for k in list if int(k['value']) != x ]

您也可以使用filter,但我相信列表理解在风格方面更受欢迎:

filter(lambda p: int(p['value']) != x, list)

编辑:注意到你的值是字符串,所以我添加了一个int转换。