I have trouble pointing out what I do wrong in recursion subroutines.
The routine is:
def Validate(n):
err=''
for z in n:
if type(z)==list:
x=Validate(z)
if x!='':
err='%s%s, ' % (err,x)
else:
if 'err' in z:
print ('...found err:',z)
err='%s%s, ' % (err,z)
return err
testpar=['test','err1','err2', ['suberr1','subb'],'isok' ,'lasterr']
print ("Result:",Validate(testpar))
The expected result is:
err1, err2, suberr1, lasterr,
but I get:
err1, err2, suberr1, , lasterr,