Skip to content
Related Articles

Related Articles

Tuple as function arguments in Python

Improve Article
Save Article
  • Last Updated : 01 Aug, 2020
Improve Article
Save Article

Tuples have many applications in all the domains of Python programming. They are immutable and hence are important containers to ensure read-only access, or keeping elements persistent for more time. Usually, they can be used to pass to functions and can have different kinds of behavior. Different cases can arise.

   Case 1: fnc(a, b) – Sends a and b as separate elements to fnc.

   Case 2: fnc((a, b)) – Sends (a, b), whole tuple as 1 single entity, one element.

   Case 3: fnc(*(a, b)) – Sends both, a and b as in Case 1, as separate integers.

The code below demonstrates the working of all cases :

Python3




# Python3 code to demonstrate working of 
# Tuple as function arguments
  
# function with default arguments 
def fnc(a=None, b=None):
    print("Value of a : " + str(a))
    print("Value of b : " + str(b))
  
# Driver code
if __name__ == "__main__" :
    
  # initializing a And b
  a = 4
  b = 7
  
  # Tuple as function arguments
  # Case 1 - passing as integers
  print("The result of Case 1 : ")
  fnc(a, b)
  
  # Tuple as function arguments
  # Case 2 - Passing as tuple
  print("The result of Case 2 : ")
  fnc((a, b))
  
  # Tuple as function arguments
  # Case 3 - passing as pack/unpack 
  # operator, as integer
  print("The result of Case 3 : ")
  fnc(*(a, b))

Output :

The result of Case 1 : 
Value of a : 4
Value of b : 7
The result of Case 2 : 
Value of a : (4, 7)
Value of b : None
The result of Case 3 : 
Value of a : 4
Value of b : 7
My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!