Tuples

" A tuple is a collection of objects which ordered and immutable. "

  • Creating a tuple is as simple as putting different comma-separated values.
  • Optionally you can put these comma-separated values between parentheses also. For example −
tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";

Accessing Values in Tuples

  • To access values in tuple, use the square brackets for slicing along with the index or indices to obtain value available at that index

. For example −

!/usr/bin/python

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 );
print "tup1[0]: ", tup1[0];
print "tup2[1:5]: ", tup2[1:5]

Updating Tuples

  1. Tuples are immutable which means you cannot update or change the values of tuple elements
  2. . You are able to take portions of existing tuples to create new tuples as the following example demonstrates −
#!/usr/bin/python

tup1 = (12, 34.56);
tup2 = ('abc', 'xyz');

# Following action is not valid for tuples
# tup1[0] = 100;

# So let's create a new tuple as follows
tup3 = tup1 + tup2;
print tup3;

When the above code is executed, it produces the following result −

Delete Tuple Elements

  • Removing individual tuple elements is not possible. There is, of course, nothing wrong with putting together another tuple with the undesired elements discarded.
  • To explicitly remove an entire tuple, just use the del statement. For example −
#!/usr/bin/python

tup = ('physics', 'chemistry', 1997, 2000);
print tup;
del tup;
print "After deleting tup : ";
print tup;

This produces the following result. Note an exception raised, this is because after del tup tuple does not exist any more

('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
   File "test.py", line 9, in <module>
      print tup;
NameError: name 'tup' is not defined

No Enclosing Delimiters

  • Any set of multiple objects, comma-separated, written without identifying symbols,

i.e., brackets for lists, parentheses for tuples, etc., default to tuples, as indicated in these short examples −

#!/usr/bin/python

print 'abc', -4.24e93, 18+6.6j, 'xyz';
x, y = 1, 2;
print "Value of x , y : ", x,y;

When the above code is executed, it produces the following result −

abc -4.24e+93 (18+6.6j) xyz
Value of x , y : 1 2

Posted on by