当我在 rails 控制台中执行以下代码时,出现语法错误:“语法错误,意外 $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 文件中运行。
非常感谢!
晚礼服
当我在 rails 控制台中执行以下代码时,出现语法错误:“语法错误,意外 $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 文件中运行。
非常感谢!
晚礼服
如果您在 IRB 中执行它,正如 Beerlington 所说,这很可能是换行问题。
它会解释为什么它在你的 .rb 文件中工作,但在 IRB 中没有......
解决方案?在 IRB 中,您可以使用分号来结束一行而不执行它......或者如果您有很长的行(该代码块没有),您可以使用经典的 \,就像您在命令行...
或者...尝试pry。这是一个 IRB 替代品,可以满足您的需求。
我在这里发布了类似的问题。如果我们将(可选)do
放入带有 while 循环的行中,那么即使在 IRB 中也可以使用。
range = 2
my_array = Array.new(range)
a = [1]
i = 0
while i < range
a.each do |b|
puts "test"
end
i += 1
end