Question about why these functions return certain values. Thanks in advance. http://pastebin.com/k5wfxp33
It is a process similar to the toString() method in Java, when you print an object you are basically getting a printout of its member variables rather than an execution of the object. Take a look at object.__str__(self) in the Python documentation for a more detailed explanation.
To expand on what @eSpeX said, look carefully at your definition of zoo(). What does it return? Answer: nothing. A function needs a return statement to return an object. When zoo() is called, another call is made to monkey(), which returns 5 INTO THE FUNCTION zoo(), not as a result of the function. To get the result I assume you are looking for (having zoo() return 5), you need to replace line 5 with "return monkey()". Do you see what would happen if you just wrote "return monkey" with no parens containing arguments?
|dw:1353472341103:dw| Does this help clear things up?
Join our real-time social learning platform and learn together with your friends!