【问题标题】:apply filter on a function in python在python中的函数上应用过滤器
【发布时间】:2018-01-10 05:14:17
【问题描述】:

当我执行以下 python 代码时,我得到了一个意外的输出。 我是 python 新手。

def foo(n):
    return n+2;
print (filter(foo,[1,2]))

我期望输出为:-

[3,4]

但我得到的输出是:-

[1,2] 

请帮我解决这个问题。

【问题讨论】:

  • 函数错误。你想要map,而不是filter

标签: python function filter


【解决方案1】:

你描述的是map而不是filter

def foo(n):
    return n+2;
print (map(foo,[1,2]))

打印出来

[3,4]

【讨论】:

  • 所以你的意思是说过滤器在检查它是否为真后返回原始值??
  • filter 保留列表中传递foo 的值。例如def foo(n): return n>=2 print(filter(foo,[1,2])) 会给[2]
  • ...我明白了。非常感谢。
猜你喜欢
  • 1970-01-01
  • 2013-07-11
  • 2011-12-31
  • 2019-06-10
  • 1970-01-01
  • 2020-06-10
  • 2016-11-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多