我想要做的是为数组中的所有项目分配一个分数,然后选择得分最高的分数。
def score(r, string)
return some_calculation(r, string)
end
pool = a_list_of_strings()
data = unrelated_list_of_strings()
现在我可以用
获得阵列中的最高分pool.map{|r| score(r, data)}.max
但这并不能告诉我哪个值得分。如果这是Python,我可以使用
max(pool, key=score)
这不是Python,所以正确的方法是什么?
答案 0 :(得分:1)
pool.max_by{|r| score(r, data)}