Functions help you remove redundant code by giving a name to a sequence of repeated steps. If you find yourself pasting the same code in multiple places, you will probably be better off putting the code into a function.
Step 1: Decide inputs and outputs
Write the test. The test is where you decide the inputs and outputs of the function.
x = 1
y = 2
f(x, y) == 3
Step 2: Prototype body
Prototype the body of the function. Sometimes it helps to describe the steps using pseudocode first.
x = 1
y = 2
x + y
Step 3: Define function
Move the body into the function definition and run the test.
def f(x, y):
return x + y
x = 1
y = 2
f(x, y) == 3
Note that in languages like Python, nearly everything can be a variable. For example, here is a function that doubles the elements of a series.
def f(x):
return x * 2
from pandas import Series
x = Series([1, 2])
f(x)
Step 4: Move function to a package
You can share functions across notebooks and scripts by using packages.