我想写一行递归缩进的代码。我只是在研究一种使用全局选项卡变量的方法。所以我使用了以下代码:
@@tab = ' '
@@tab_add = ' '
@@nl = "\n"
def helper
left = @@tab
right = @@tab
@@tab = @@tab + @@tab_add
str = '<hello>' + @@nl + left + helper2 + right + @@nl + '</hello>'
end
def helper2
left = @@tab
right = @@tab
@@tab = @@tab + @@tab_add
str = '<goodbye>' + @@nl + left + helper3 + right + @@nl + '</goodbye>'
end
def helper3
str = 'dawg'
end
我知道,这不是最优雅的方式,但我只是在尝试。无论如何,当我输入
helper
我明白了
<hello>
<goodbye>
dawg
</goodbye>
</hello>
但是为什么结束的再见标签也没有缩进呢?我将它保存为“帮助”函数中的“正确”局部变量。谢谢您的帮助!