In this article, we will discuss multiple ways by which we can create a list of tuples in Python.
Create a List of Tuples Using list() and tuple() methods
we can create a list of tuples using list and tuples directly.
Syntax: [(tuple1),(tuple2),(tuple3),..,(tuple n)]
Example: Python code to create list of tuples using list and tuple
Python3
# create tuples with college id and # name and store in a list data = [( 1 , 'sravan' ), ( 2 , 'ojaswi' ), ( 3 , 'bobby' ), ( 4 , 'rohith' ), ( 5 , 'gnanesh' )] # display data data |
Output:
[(1, 'sravan'), (2, 'ojaswi'), (3, 'bobby'), (4, 'rohith'), (5, 'gnanesh')]
Create a List of Tuples Using zip() function
Using the zip() function we can create a list of tuples from n lists.
Syntax: list(zip(list1,list2,.,listn)
Here, lists are the data (separate lists which are elements like tuples in the list
Example: Python program to create two lists with college id and name and create a list of tuples using zip() function
Python3
# create two lists with college id and name roll_no = [ 1 , 2 , 3 , 4 , 5 ] name = [ 'sravan' , 'ojaswi' , 'bobby' , 'rohith' , 'gnanesh' ] # zip the two lists using zip() function data = list ( zip (roll_no, name)) # display data data |
Output:
[(1, ‘sravan’), (2, ‘ojaswi’), (3, ‘bobby’), (4, ‘rohith’), (5, ‘gnanesh’)]
Create a List of Tuples Using Using zip() and iter() method
Here we are going to form a list of tuples using iter() function along with zip() function.
Syntax: [x for x in zip(*[iter(list)])]
where x is the iterator to iterate in the list, zip is used to zip the list and iter() is used to iterate through the entire list
Example: Python code to create a list of tuples by forming a list of tuples
Python3
# create a list with name name = [ 'sravan' , 'ojaswi' , 'bobby' , 'rohith' , 'gnanesh' ] # zip the two lists using iter() function data = [x for x in zip ( * [ iter (name)])] # display data data |
Output:
[(‘sravan’,), (‘ojaswi’,), (‘bobby’,), (‘rohith’,), (‘gnanesh’,)]
Create a List of Tuples Using map() function
Here we are passing the data in list and then using the map() function we can create a list of tuples
Syntax: list(map(tuple, list_data))
Here, list_data is the input list to create a list of tuples, list is a predefined function and tuple is a predefined function
Example: Python code to create a list of tuples from the list using map() function
Python3
# create a list with name name = [[ 'sravan' ], [ 'ojaswi' ], [ 'bobby' ], [ 'rohith' ], [ 'gnanesh' ]] # create list of tuple using above # list using map function data = list ( map ( tuple , name)) # display data data |
Output:
[(‘sravan’,), (‘ojaswi’,), (‘bobby’,), (‘rohith’,), (‘gnanesh’,)]
Create a List of Tuples Using list comprehension and tuple() method
Here we are using List comprehension and tuple to create a list of tuples.
Syntax:
[tuple(x) for x in list_data]
where tuple(x) is an iterator to convert iterative objects to tuple and list_data is the input data
Example: Python code to create a list of tuples using list comprehension and tuple() method
Python3
# create a list with name name = [[ 'sravan' ], [ 'ojaswi' ], [ 'bobby' ], [ 'rohith' ], [ 'gnanesh' ]] # create list of tuple using above list # using list comprehension and tuple() # method data = [ tuple (x) for x in name] # display data data |
Output:
[(‘sravan’,), (‘ojaswi’,), (‘bobby’,), (‘rohith’,), (‘gnanesh’,)]
Create a List of Tuples without using builtin function
Here’s an example of how you can create a list of tuples without using any built-in functions like list() or tuple().
Python3
# Function to create a list of tuples def create_list_of_tuples(lst1, lst2): result = [] # Empty list to store the tuples for i in range ( len (lst1)): # Create a tuple from corresponding elements tuple_element = (lst1[i], lst2[i]) result.append(tuple_element) # Append the tuple to the list return result # Example usage list1 = [ 1 , 2 , 3 ] list2 = [ 'a' , 'b' , 'c' ] list_of_tuples = create_list_of_tuples(list1, list2) print (list_of_tuples) |
Output:
[(1, 'a'), (2, 'b'), (3, 'c')]