The Python tuple() function is a built-in function in Python that can be used to create a tuple. A tuple is an ordered and immutable sequence type.
Example:
Python3
l = [ 1 , 2 , 3 ] print ( tuple (l)) |
Output:
(1, 2, 3)
Python tuple() Syntax
Syntax: tuple(iterable)
- iterable (optional): It is an iterable(list, range etc..) or an iterator object
- If an iterable is passed, the corresponding tuple is created,
- else, an empty tuple is created.
Return: Returns a Tuple
It raises a TypeError, if an iterable is not passed. Below programs illustrate tuple() function in Python.
tuple() in Python Function Examples
Create tuples using tuple()
In this example, we are creating a tuple() in Python and printing it.
Python3
# when parameter is not passed tuple1 = tuple () print ( "empty tuple:" , tuple1) # when an iterable(e.g., list) is passed list1 = [ 1 , 2 , 3 , 4 ] tuple2 = tuple (list1) print ( "list to tuple:" , tuple2) # when an iterable(e.g., string) is passed string = "neveropen" ; tuple4 = tuple (string) print ( "str to tuple:" , tuple4) |
Output :
empty tuple: () list to tuple: (1, 2, 3, 4) str to tuple: ('g', 'e', 'e', 'k', 's', 'f', 'o', 'r', 'g', 'e', 'e', 'k', 's')
Errors when using Tuple
Program demonstrating the TypeError using tuple()
Python3
# Python3 program demonstrating # the TypeError in tuple() function # Error when a non-iterable is passed tuple1 = tuple ( 1 ) print (tuple1) |
Output :
Traceback (most recent call last): File "/home/eaf759787ade3942e8b9b436d6c60ab3.py", line 5, in tuple1=tuple(1) TypeError: 'int' object is not iterable
Accessing Values in Tuples
In this example, we are creating a tuple and we are accessing the element from index 1 to 3.
Python3
my_tuple = ( 1 , 2 , 3 , 4 , 5 ) print (my_tuple[ 1 : 4 ]) |
Output :
(2, 3, 4)
Deleting a Tuple
In this example, we are creating a tuple and we are deleting it and after the deletion, we are trying to access the deleted tuple.
Python3
my_tuple = ( 1 , 2 , 3 , 4 , 5 ) del my_tuple print (my_tuple) |
Output :
print(my_tuple) NameError: name 'my_tuple' is not defined
Creating a Tuple From dict
In this example, we are creating a dict and we then use the items() method of the dictionary to get a list of tuples, where each tuple contains a key-value from dict.
Python3
my_dict = { 'apple' : 1 , 'banana' : 2 , 'cherry' : 3 } my_tuple = tuple (my_dict.items()) print (my_tuple) |
Output :
(('apple', 1), ('banana', 2), ('cherry', 3))
Tuple() Built-In Functions
Here are some examples of built-in functions in tuples.
len() with Python Tuple
It returns the number of elements in a tuple.
Python3
my_tuple = tuple (( 1 , 2 , 3 )) print ( len (my_tuple)) |
Output :
3
max() with Python Tuple
It returns the largest element in a tuple.
Python3
my_tuple = tuple (( 1 , 2 , 3 )) print ( max (my_tuple)) |
Output :
3
min() with Python Tuple
It returns the smallest element in a tuple.
Python3
my_tuple = tuple (( 1 , 2 , 3 )) print ( min (my_tuple)) |
Output :
1
sum() with Python Tuple
It returns the sum of all the elements in a tuple.
Python3
my_tuple = tuple (( 1 , 2 , 3 )) print ( sum (my_tuple)) |
Output :
6
sorted() with Python Tuple
It returns a new sorted list containing the elements of the tuple.
Python3
my_tuple = tuple (( 3 , 2 , 1 )) sorted_tuple = tuple ( sorted (my_tuple)) print (sorted_tuple) |
Output :
(1,2,3)
Advantages Of Tuple Over List
Python supports both tuples and lists as data structures that may be used to hold a collection of data. Nevertheless, there are certain benefits to utilising tuples rather than lists.
- Tuples cannot be changed.
- Tuples are faster than lists.
- Tuples can be used as dictionary keys.