【发布时间】:2016-03-05 12:42:03
【问题描述】:
我正在尝试一个简单的程序,它可以让我打印出“计算机”的反向单词。当我运行我的代码时,我收到一个运行时错误 RuntimeError: maximum recursion depth exceeded in cmp。
我可以知道发生了什么,我该如何解决?
def reverse(str1):
if str1 == '':
return str1
else:
return reverse(str1[1:] + str1[0])
print reverse('retupmoc')
【问题讨论】:
-
除了编程练习之外,我假设您知道这种反转字符串的方式:
'retupmoc'[::-1] -
也可以将代码缩减为
return reverse(str1[1:]) + str1[0] if str1 else ""
标签: python string python-2.7 recursion