Python Tuples In python tuples are used to store immutable objects. Python Tuples are very similar to lists except to some situations. Python tuples are immutable means that they can not be modified in whole program.
Packing and Unpacking a Tuple: In Python, there is a very powerful tuple assignment feature that assigns the right-hand side of values into the left-hand side. In another way, it is called unpacking of a tuple of values into a variable. In packing, we put values into a new tuple while in unpacking we extract those values into a single variable.
Example 1
Python3
a = ( "MNNIT Allahabad" , 5000 , "Engineering" )
(college, student, type_ofcollege) = a
print (college)
print (student)
print (type_ofcollege)
|
Output: MNNIT Allahabad
5000
Engineering
NOTE : In unpacking of tuple number of variables on left-hand side should be equal to number of values in given tuple a.
Python uses a special syntax to pass optional arguments (*args) for tuple unpacking. This means that there can be many number of arguments in place of (*args) in python. All values will be assigned to every variable on the left-hand side and all remaining values will be assigned to *args .For better understanding consider the following code.
Example 2
Python3
x, * y, z = ( 10 , "Geeks " , " for " , "Geeks " , 50 )
print (x)
print (y)
print (z)
x, y, * z = ( 10 , "Geeks " , " for " , "Geeks " , 50 )
print (x)
print (y)
print (z)
|
Output: 10
['Geeks ', ' for ', 'Geeks ']
50
10
Geeks
[' for ', 'Geeks ', 50]
In python tuples can be unpacked using a function in function tuple is passed and in function values are unpacked into normal variable. Consider the following code for better understanding.
Example 3 :
Python3
def result(x, y):
return x * y
print (result( 10 , 100 ))
z = ( 10 , 100 )
print (result( * z))
|