Я готовлю строку, которая будет eval
'ed. Строка будет содержать предложение, построенное из существующего Array
. У меня есть следующие:Stringify array for eval
def stringify(arg)
return "[ '" + arg.join("', '") + "' ]" if arg.class == Array
"'#{arg}'"
end
a = [ 'a', 'b', 'c' ]
eval_str = 'p ' + stringify(a)
eval(eval_str)
, который печатает строку ["a", "b", "c"]
.
Есть ли более идиоматический способ сделать это? Array#to_s
не режут. Есть ли способ присвоить значение переменной p
переменной?
Спасибо!
инспектировать совершенен. Благодаря! @dylanfm, yes eval был для контекста. – 2008-11-22 12:11:31