On 31/10/11 17:09, Joel Montes de Oca wrote:

FUN MAIN
   |
   |
   |__ FUN A
           |
           |
           |_ FUN B

This is how I understand it. So if I want this to work, I need FUN B to
give something back to FUN A so that FUN A will have something to give
back to FUN MAIN but that doesn't feel right.

It is right. You need to add a return statement to your code like so:

def UserChoice ():      
        ....
        if choice.lower() not in ('prs'): # NB use a single string
        ...
                raw_input('Press Enter to try again.')
                return UserChoice ()   # must return the value to caller
        else:
                return choice    # just as you do here

But this is not the best way to use recursion...

Is there a way to say GO TO FUN A instead of calling the function?

Yes, in a while loop. As a later post shows you figured  out!
That's a much better solution. But this shows that you could have used recursion if you really wanted to.

HTH,

--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to