Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Mail Systems
Eclipse Documentation

How To Guides
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Problem Solutions
Privacy Policy




Function Definition: The def and return Statements

We create a function with a def statement. This provides the name, parameters and the suite of statements that creates the function's result.

def name ( 〈 parameter ...〉 ): suite

The name is the name by which the function is known. The parameters is a list of variable names; these names are the local variables to which actual argument values will be assigned when the function is applied. The suite (which must be indented) is a block of statements that computes the value for the function.

The first line of a function is expected to be a document string (generally a triple-quoted string) that provides basic documentation for the function. This is traditionally divided in two sections, a summary section of exactly one line and the detail section. We'll return to this style guide in the section called “Functions Style Notes”.

The return statement specifies the result value of the function. This value will become the result of applying the function to the argument values. This value is sometimes called the effect of the function.

return expression

Let's look at a complete, although silly, example.

def odd( spin ):
    """Return true if this spin is odd."""
    if spin % 2 == 1:
        return True
    return False

We name this function odd, and define it to accept a single parameter, named spin . We provide a docstring with a short description of the function. In the body of the function, we test to see if the remainder of spin /2 is 1; if so, we return True. Otherwise, we return False.

  Published under the terms of the Open Publication License Design by Interspire