Julia:如何使用需要多于1个参数的函数过滤数组?

时间:2017-12-28 10:43:24

标签: lambda filter julia

filter(isodd, [1,2,3])

isodd只需要一个参数,所以没关系。 但是,如果我想要过滤数组的函数需要两个参数呢?我希望第一个参数是数组中的更改值和要修复的第二个参数。我怎么做?或者我是否有义务使用lambda?

N.B。第二个是固定的,但不是常数。下次我过滤时可能会改变。

1 个答案:

答案 0 :(得分:2)

我想使用闭包f = c->filter(x->x>c, [1,2,3])或者函数更复杂:

g(c,a) = filter(a) do x
           # complicated body
           x > c
         end

使用ForwardDiff.jl等一些软件包时,通常会使用此技巧。