Python Functions¶
Python functions are reusable blocks of code that perform a specific task and can be called multiple times within a program to execute that task.
In Python, a function is a block of reusable code that is used to perform a single, related action. Functions provide better modularity for your application and a high degree of code reusing.
Defining a function
A function in Python is defined by a def
statement. The general syntax looks like this:
Let's break down the components:
def
: This keyword signals the start of a function definition.function_name
: This is the name of the function. It should be descriptive of what the function does and should follow the same naming conventions as variables.parameters
: These are inputs to the function. They are optional, and a function may contain zero or more parameters.function body
: This is where you write the code that the function should execute.return
: This keyword is used to exit the function and return a value. If no return statement is included, the function will returnNone
by default.
Simple function example
Here is an example of a function that takes two numbers as inputs and returns their sum:
In this example, add_numbers
is the function name, a
and b
are parameters, and a + b
is the function body. The function adds a
and b
together and returns the result.
More complex function example
Now, let's consider a more complex example. Suppose we want to create a function that checks whether a number is prime (a number is considered prime if it is greater than 1 and has no divisors other than 1 and itself). Here's how we could do it:
def is_prime(n):
if n <= 1:
return False
for i in range(2, n):
if n % i == 0:
return False
return True
print(is_prime(2)) # Output: True
print(is_prime(4)) # Output: False
In this function, is_prime
, we're using a loop and conditional statements within our function body to check for the condition of being a prime number.
User-defined Functions¶
An example function
# Defines a "repeat" function that takes 2 arguments.
def repeat(s, exclaim):
"""
Returns the string 's' repeated 3 times.
If exclaim is true, add exclamation marks.
"""
result = s + s + s # can also use "s * 3"
if exclaim:
result = result + '!!!'
return result
def
defines a function named repeat
that takes two parameters, s
and exclaim
- s
is a string and is the value that will be repeated
- exclaim
is a boolean that determines if an ! is added or not
- The number of times the string is repeated is determined by the value of exclaim
.
The result of running this code