What Are Functions?
Functions are reusable blocks of code. Instead of repeating logic everywhere, you wrap it inside a function and call it whenever you need it.
Basic Function Syntax
def greet():
print("Hello!")
Call it:
greet()
Functions With Parameters
def greet(name):
print("Hello, " + name)
greet("Kaloyan")
Return Values
def add(a, b):
return a + b
result = add(5, 3)
print(result)
Default Parameters
def welcome(name="guest"):
print("Welcome, " + name)
welcome()
welcome("Kaloyan")
Keyword Arguments
def profile(name, age):
print(name, age)
profile(age=12, name="Kaloyan")
Multiple Return Values
def calc(a, b):
return a + b, a * b
sum_val, mul_val = calc(3, 4)
Variable Number of Arguments (*args)
def total(*nums):
print(sum(nums))
total(1, 2, 3, 4)
Keyword Arguments Dictionary (**kwargs)
def show_info(**data):
print(data)
show_info(name="Kaloyan", age=12)
Lambda (Anonymous) Functions
square = lambda x: x * x
print(square(5))
Functions Inside Functions
def outer():
def inner():
print("Inner!")
inner()
Functions as Parameters
def apply(func, value):
return func(value)
print(apply(lambda x: x + 10, 5))
What's Next?
Next, you’ll learn about Python modules and packages — how to organize code into reusable files and build larger applications.