🧠Functions help you organize code into reusable pieces. Once defined, you can call a function whenever you need its behavior—just like pressing a button.
Defining a Function
Use the def
keyword to define a function.
def greet():
print ("Hello!" )
greet()
Parameters and Arguments
You can pass data into functions using parameters.
def greet(name):
print ("Hello," , name)
greet("Data Science students!" )
Hello, Data Science students!
Return Values
Use return
to send a result back to the caller.
def add(number1, number2):
return number1 + number2
result = add(5 , 5 )
print (result)
Default Parameter Values
You can give parameters default values.
def greet(name= "Data Science students!" ):
print ("Hello," , name)
greet()
greet("Tyler!" )
Hello, Data Science students!
Hello, Tyler!
Keyword Arguments
You can pass arguments by name, in any order.
def software(ide, programming_language):
print ("My favorite ide is" , ide)
print ("to code" , programming_language + "." )
software(programming_language= "Python" , ide= "VSCode" )
My favorite ide is VSCode
to code Python.
def software(ide, programming_language):
print (f"My favorite ide is { ide} to code { programming_language} ." )
software(programming_language= "Python" , ide= "VSCode" )
My favorite ide is VSCode to code Python.
Variable Number of Arguments
Use *args
for any number of positional arguments.
def total_add(* args):
return sum (args)
print (total_add(1 , 2 , 3 ))
Use **kwargs
for any number of keyword arguments.
def course_info(** kwargs):
for key, value in kwargs.items():
print (key, ":" , value)
course_info(name= "Data Mining" , code = 6103 )
name : Data Mining
code : 6103
Functions Returning Multiple Values
You can return more than one value using tuples.
def add_and_subtract(number1, number2):
return number1 + number2, number1 - number2
summation, subtraction = add_and_subtract(4 , 2 )
print (f"summation { summation} \n subtraction { subtraction} " )
summation 6
subtraction 2
Common Errors
Some frequent errors encountered when dealing with Functions in Python.
def greet()
print ("Hello" )
Cell In[10] , line 1
def greet()
^
SyntaxError : expected ':'
def greet(name):
print ("Hello" , name)
greet()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
Cell In[11] , line 4
1 def greet (name):
2 print (" Hello " , name)
----> 4 greet ( )
TypeError : greet() missing 1 required positional argument: 'name'