Defining functions

Use def to define a function:

def greet():
    print("Hello!")

# Call the function:
greet()  # Prints "Hello!"

Functions with parameters

def greet(name):
    print(f"Hello, {name}!")

greet("Alice")  # "Hello, Alice!"
greet("Bob")    # "Hello, Bob!"

Multiple parameters

def add(a, b):
    return a + b

result = add(3, 5)
print(result)  # 8

Return values

def multiply(x, y):
    return x * y

result = multiply(4, 5)
print(result)  # 20

# Functions without return return None:
def print_sum(a, b):
    print(a + b)

result = print_sum(3, 5)  # Prints 8
print(result)  # None

Why use functions

  • Reuse code (write once, use many times)
  • Organize code into logical blocks
  • Make code easier to test and debug
  • Break complex problems into smaller pieces