语法错误:意外的keyword_do_block

Mel*_*bel 3 ruby foreach

我得到了这个= Ruby书,我正在尝试书中的一些示例问题,我得到一个语法错误:意外的keyword_do_block.

我之前已经写了十亿次类似的代码并且没有看错(也许我今晚只是愚蠢.)谁能看到我做错了什么?

代码:

temp = ["34","35","36","45","534","86","443","54","23","54","75","54","73"]

temp.each |e| do
  fahrenheit = (e * 9 / 5) + 32
  puts fahrenheit
end
Run Code Online (Sandbox Code Playgroud)

Gui*_*nal 9

替换为:

temp.each do |e|
  # ...
end
Run Code Online (Sandbox Code Playgroud)

此外,您不能使用String执行数学运算,从数组中删除所有引号或e.to_i在块中使用.


the*_*Man 5

问题出在您的each块定义中:

temp.each |e| do
Run Code Online (Sandbox Code Playgroud)

应该:

temp.each do |e|
Run Code Online (Sandbox Code Playgroud)

而且,不要觉得自己很傻。当我们看不到什么地方出问题时,我们所有人都在盯着代码。对编程的目的是拥有更多的眼睛来寻找问题。