We're back after a server migration that caused effbot.org to fall over a bit harder than expected. Expect some glitches.

The return statement

Return a value to the caller.

Syntax:

return

or

return expression list

If an expression list is present, it is evaluated, else None is substituted.

return leaves the current function call with the expression list (or None) as return value.

When return passes control out of a try statement with a finally clause, that finally clause is executed before really leaving the function.

In a generator function, the return statement is not allowed to include an expression list. In that context, a bare return indicates that the generator is done and will cause StopIteration to be raised.

return may only occur syntactically nested in a function definition (see def), not within a nested class definition.