If you want to __reuse code__, you can use a function.

This prevents you from writing the same thing *over and over again.*

A function has a unique distinct name in the program. Once you call a function it will execute one or more lines of codes, which we will call a *code block*.

**Related Course: **

Complete Python Bootcamp: Go from zero to hero in Python

### Function example

For example, we could have the Pythagoras function.

In case your math is a little rusty, a^2 + b^2 = c^2. Thus, c = sqrt( a^2 + b^2). In code we could write that as:

0 1 2 3 4 5 6 7 8 |
import math def pythagoras(a,b): value = math.sqrt(a *a + b*b) print(value) pythagoras(3,3) |

We call the function with parameters a=3 and b =3 on the last line. A function can be called several times with varying parameters. There is no limit to the number of function calls.

**Note:**The

**def**keyword tells Python we define a function. Always use four spaces to indent the code block, using another number of spaces will throw a syntax error.

### Return value

It is also possible to store the output of a function in a variable. To do so, we use the keyword **return**.

0 1 2 3 4 5 6 7 8 9 10 |
import math def pythagoras(a,b): value = math.sqrt(a*a + b*b) return value result = pythagoras(3,3) print(result) |

The function pythagoras is called with a=3 and b=3. The program execution continues in the function pythagoras. The output of math.sqrt(a*a + b*b) is stored in the function variable value. This is returned and the output is stored in the variable result. Finally, we print variable result to the screen.

## 6 Comments

When I initially commented I clicked the “Notify me when new comments are added” checkbox and now each time a comment is added I get three e-mails with the same comment. Is there any way you can remove people from that service? Cheers!

Removed your mail address, should be good now. Let me know if you still get mails

How do you do addition and subtraction?

By the way I am a beginner

You got a small typo below the first block of code. I think it’s supposed to be ‘y=3’. 🙂

Thanks Sebastian!