Python字符串长度递归

| 我正在尝试编写一个简单的函数来递归地计算字符串长度,这是空白。 我可以简单地实现求和,斐波那契和阶乘,但是我试图仅用一个参数来创建最简单的函数,我不喜欢第二个作为计数器索引。 可以给我贴一些小东西吗?     
已邀请:
这是你想要的?
def recursiveLength(theString):
    if theString == \'\': return 0
    return 1 + recursiveLength(theString[1:])
    
这样做:
def length(s):
    return 0 if s == \'\' else 1 + length(s[:-1])

print length(\'hello world\') # prints 11
    
如果不必是尾递归的:
def strlen(s):
  if s == \'\':
    return 0
  return 1 + strlen(s[1:])
不过,它的效率很低。     
功能性Haskell风格
       >>> def RecListValue(list_value):
               return type(list_value) in [list,str,tuple] and list_value and    1+RecListValue(list_value[1:]) or 0
       >>> example_struct  = [range(10), (\"one\",)*12, \"simple string\", 12]       
       >>> map(RecListValue, example_struct)
           [10, 12, 13, 0]
       >>> 
    

要回复问题请先登录注册