我想将块定义为字符串,然后创建lambda。 以下示例不起作用。 这样的事情可能吗?
code_string = "|x|x*2"
l = lambda {eval(code_string)}
l.call(3) => 6
答案 0 :(得分:9)
这有效
eval "lambda { " + code_string + " }"
我只是不知道为什么会这样做而另一个没有。
答案 1 :(得分:2)
eval "lambda {#{code_string}}"