关于recursion的问题

写一个function,numbers(s)。s是string,累积s中所有的digit,然后return the string of the digits。如果碰到empty string或者string里面没有数字,则返回empty string ''
结果如下图所示:
图片描述

要求用recursion编写,不能用loop。下面是我自己初步写的code,但是只能返回empty string''
图片描述

望高手能给一个完整的code,多谢!

回答:

def numbers(s):

if len(s) == 0:

return ''

return (s[0] if s[0].isdigit() else '') + numbers(s[1:])

回答:

ret = ''

def numbers(s):

global ret

if len(s):

if '0' <= s[0] <= '9':

ret += s[0]

numbers(s[1:])

if __name__ == '__main__':

numbers("541df35")

print ret

回答:

这代码蠢到不能看了。
明显是补作业,楼上还一本正经的回答。

以上是 关于recursion的问题 的全部内容, 来源链接: utcz.com/a/159996.html

回到顶部