def method
a = 3
b = 4
some_method_that_gives # [a, b]
end
答案 0 :(得分:41)
它输出符号数组,显示变量。在您的情况下:[:a, :b]
答案 1 :(得分:6)
local_variables
列出了局部变量,但在定义之前列出了它们。见:
p local_variables
a = 1
p local_variables
此输出
[:a]
[:a]
这可能不是你所期望的。与defined?
p defined? a
a = 1
p defined? a
输出更多预期的
nil
"local-variable"
答案 2 :(得分:0)
如果您正在寻找包含其值的列表:
variables = self.local_variables.each_with_object({}) { |key, hash| hash[key] = eval(key.to_s) }