Python:递归修改字符串

时间:2016-11-22 18:27:06

标签: python python-2.7 recursion

我的目标是以递归方式修改字符串,这样如果字符串长度超过48个字符,则删除最后一个字。如果/一旦字符串的长度不超过48个字符,则返回它。

这是我的尝试:

def checkLength(str):
  if len(str) > 48:
    str = str.rsplit(' ',1)[0]
    checkLength(str)
  else:
    return str

传递字符串>长度为48个字符会产生空值。

在Python中实现这一目的的正确方法是什么?为什么上述功能无法正常工作?

1 个答案:

答案 0 :(得分:2)

def checkLength(my_str):
  if len(my_str) > 48:
    my_str = str.rsplit(' ',1)[0]
    # you must return the recursive call! 
    return checkLength(my_str)
  else:
    return my_str