Chapter 9. Functions
The smaller the function, the greater the management.
C. Northcote Parkinson
So far, all of our Python code examples have been little fragments. These are good for small tasks, but no one wants to retype fragments all the time. We need some way of organizing larger code into manageable pieces.
The first step to code reuse is the function: a named piece of code, separate from all others. A function can take any number and type of input parameters and return any number and type of output results.
You can do two things with a function:
-
Define it, with zero or more parameters
-
Call it, and get zero or more results
Define a Function with def
To define a Python function,
you type def
, the function name,
parentheses enclosing any input parameters
to the function,
and then finally, a colon (:
).
Function names have the same rules as variable names
(they must start with a letter or _
and contain only
letters, numbers, or _
).
Let’s take things one step at a time, and first define and call a function that has no parameters. Here’s the simplest Python function:
>>>
def
do_nothing
():
...
pass
Even for a function with no parameters like this one,
you still need the parentheses
and the colon in its definition.
The next line needs to be indented,
just as you would indent code under an if
statement.
Python requires the pass
statement to show that
this function does nothing.
It’s the equivalent of
This page intentionally left blank
(even though it isn’t anymore).
Get Introducing Python, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.