0
我有一个包含一个涉及递归调用过程的步骤的过程。我希望某个动作不是第一次完成,而是在其他时候以递归方式进行。为了确保在递归调用中只发生一次动作
def a(string):
while string.startswith('/'):
string =string[1:]
stringa = string.split('/',1)
if(len(stringa)>1):
a(stringa)
基本上我的字符串的类型是/a/b/c/d
。我想在第一时间期间和相继的递归作为
stringa具有stringa作为{/}{a/b/c/d}
= {A} {B/C/d}
stringa = {B} {C/d}
stringa = {C} { d}
想到有一个标志初始设置为false,但设置为true,一旦它存在循环 – csharpcoder
你试过了什么?你是否在递归调用之前通过打印stringa来尝试调试,并试图让stringa成为你想要的格式?在()的开始处打印字符串也是一个好主意。递归函数可能是一个很难调试的问题,如果可以的话,可以考虑使用for循环,如果你明白我的意思,也可以更容易地实现你的第一次操作,因为没有任何递归。 – barny
无论如何,你的代码不起作用,因为你期望一个字符串,但'stringa'是一个列表。 –