此代码似乎在Java中工作,但是当我将它转换为Python时,它超过了最大递归深度并退出。不知道有什么区别。他们看起来像他们的功能一样。代码适用于Java而不是Python?
Java版本:
public String addCommas(String number)
{
if(number.length < 4
{
return number;
}
return addCommas(number.subString(0, number.length - 3)) + "," + number.subString(number.length - 3, number.length);
}
Python版本:
def addCommas(number):
number = str(number)
if len(number) < 4:
return number
else:
return addCommas(number[:len(number) - 3] + ',' + number[len(number) - 3:])
提前任何帮助谢谢!
删除Java标记假设你不希望在Java的答案。 –
你的括号是不同的。对'addCommas'的调用应该在'number [:len(number) - 3]'后面结束,但它不会。 'return addCommas(number [:len(number) - 3])+','+ number [len(number) - 3:]' –
我现在感觉非常愚蠢,非常感谢您的时间! – BuggyLemon