我正在尝试编写一个函数,将字符串分成两个字符串。第一个字符串应只包含小写字母,而第二个字符串则应只包含大写字母。
我已经提出了一种可行的解决方案,但我希望能够有一个函数只需一次遍历字符串即可完成。我已经尝试了整整一天,但还没有想出解决方案,因此我需要一些帮助。
棘手的部分是我必须使用递归来完成这个任务。我已经想出了一种迭代的解决方案,这很容易,但是如前所述,我必须以递归方式完成。
这是我编写的结合了两个函数的代码:
我已经提出了一种可行的解决方案,但我希望能够有一个函数只需一次遍历字符串即可完成。我已经尝试了整整一天,但还没有想出解决方案,因此我需要一些帮助。
棘手的部分是我必须使用递归来完成这个任务。我已经想出了一种迭代的解决方案,这很容易,但是如前所述,我必须以递归方式完成。
这是我编写的结合了两个函数的代码:
def split_rec1(str):
if str == "":
return str
elif str[0].islower():
return str[0] + split_rec1(str[1:])
else:
return split_rec1(str[1:])
def split_rec2(str):
if str == "":
return str
elif str[0].isupper():
return str[0] + split_rec2(str[1:])
else:
return split_rec2(str[1:])
def split_rec(str):
return (split_rec1(str), split_rec2(str))