2

在 python 中,它有 getattr 例如我可以这样做:

 class test:
       def say(word):
           return word

正在做,

getattr(test,'say')('something')

返回这个:

'something' 

因为你用 getattr 填充了 def 说的“某事”。

我在 ruby​​ 中尝试了一些方法,但我可以让它工作的唯一方法实际上是在类中执行 self.say('something') 是否有类似 getattr for ruby​​ 的东西?提前致谢。

4

1 回答 1

3

在红宝石中:

class Test
  def say(word)
    word
  end
end

test = Test.new
test.send(:say, "something")  #=> "something"
于 2013-09-21T20:04:50.840 回答