“意外结束”错误

时间:2012-10-21 07:14:03

标签: ruby

我正在尝试编写Ruby递归函数,但我不断得到这个错误。我的代码就是这样的

def myfun(mylist)
   nextlist = []  

   if mylist.size == 1  
      return (mylist[0])
   else
      # populate the list "nextlist" with fewer elements as compared to mylist somehow
   end

   return myfun(nextlist)
end

出现以下错误消息,指向上一个end语句:

  

语法错误,意外$ end,期待keyword_end

这里的问题在哪里?

2 个答案:

答案 0 :(得分:1)

根据旧的“教人钓鱼”谚语,我会回答更一般的问题“如何找到遗失或多余的end?”。

为此,我发现使用编辑器的自动缩进功能非常有用。在vim中,我只是按gg = G来缩进整个文件,然后直观地扫描它以找到缩进开始与我期望的不同。

答案 1 :(得分:0)

复制并粘贴代码时,我没有收到语法错误。您的粘贴功能周围是否有其他代码可能缺少end