当我在rails控制台中执行以下代码时出现语法错误: “语法错误,意外的$ end,期待keyword_end”
range = 2
my_array = Array.new(range)
a = [1]
i = 0
while i < range do
a.each do |b|
puts "test"
end
i += 1
end
有谁知道我做错了什么?奇怪的是,代码在ruby文件中的我的服务器上工作。
非常感谢!
tuxware
答案 0 :(得分:0)
如果你在IRB中执行它,正如Beerlington所说的那样,这可能就是线路问题。
它解释了为什么它在您的.rb文件中工作但在IRB中没有...
解决方案?在IRB中,您可以使用分号结束一行而不执行它...或者如果您有一个长行(该代码块没有),您可以使用经典\,就像您在使用命令行......
或者......尝试pry。这是一个IRB替代品,可以容纳你的大块。
答案 1 :(得分:0)
我遇到了here发布的类似问题。如果我们在带有while循环的行中删除(可选)[difference,index] = min(abs(i-i2));
disp(v(index)); % point where both curves are closest
disp(difference); % how close they are at that point
,那么即使在IRB中也是如此。
do