在Python中使用lambda + filter列出过滤

时间:2015-08-19 09:59:11

标签: python lambda

我发现自己很难过滤基本需求:我有一个列表,我必须按项目的值过滤它:
我的代码:

list1=[{"a":865,"b":1},{"a":56,"b":6},{"a":995,"b":1,"c":5},{"a":1,"b":42}]
a=filter(lambda x:x["b"]==1, list1)
print a

我得到了有效输出,但如果我想用== 865和b == 1更新我的过滤器,我会收到无效的语法错误:

a=filter(lambda x:x["a"]==865 && x["b"]==1, list1)
print a

请帮助。提前谢谢。

1 个答案:

答案 0 :(得分:3)

&&替换为and。应该这样做! The docs (python 2)