【发布时间】:2010-10-06 01:58:00
【问题描述】:
我正在尝试对 Ruby 进行一些处理。因此,我尝试实现“编程集体智能”Ruby 一书中的算法(用 Python 给出)。
在第 8 章中,作者传递了一个方法 a 作为参数。这似乎在 Python 中有效,但在 Ruby 中无效。
我这里有方法
def gaussian(dist, sigma=10.0)
foo
end
并想用另一种方法调用它
def weightedknn(data, vec1, k = 5, weightf = gaussian)
foo
weight = weightf(dist)
foo
end
我得到的只是一个错误
ArgumentError: wrong number of arguments (0 for 1)
【问题讨论】:
标签: ruby parameters methods