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:
>>>defdo_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).
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access