Given a list of tuples, Write a Python program to remove all the duplicated tuples from the given list.
Examples:
Input : [(1, 2), (5, 7), (3, 6), (1, 2)] Output : [(1, 2), (5, 7), (3, 6)] Input : [('a', 'z'), ('a', 'x'), ('z', 'x'), ('a', 'x'), ('z', 'x')] Output : [('a', 'z'), ('a', 'x'), ('z', 'x')]
Method #1 : List comprehension
This is a naive approach to use list comprehension. Here, we use two for loops and set data structure to cancel out all the duplicates.
# Python3 program to remove duplicate # tuples from list of tuples def removeDuplicates(lst): return [t for t in (set(tuple(i) for i in lst))] # Driver code lst = [(1, 2), (5, 7), (3, 6), (1, 2)] print(removeDuplicates(lst))
Output:
[(1, 2), (5, 7), (3, 6)]
Method #2 : List comprehension (Efficient approach)
This method is efficient as compared to the above method, here we use a single for loop within list comprehension and then convert it to set to remove duplicates and then again convert it to list.
# Python3 program to remove duplicate # tuples from list of tuples def removeDuplicates(lst): return list(set([i for i in lst])) # Driver code lst = [(1, 2), (5, 7), (3, 6), (1, 2)] print(removeDuplicates(lst))
Output:
[(1, 2), (5, 7), (3, 6)]
Method #3 : Python enumerate() method
# Python3 program to remove duplicate # tuples from list of tuples def removeDuplicates(lst): return [[a, b] for i, [a, b] in enumerate(lst) if not any(c == b for _, c in lst[:i])] # Driver code lst = [(1, 2), (5, 7), (3, 6), (1, 2)] print(removeDuplicates(lst))
Output:
[[1, 2], [5, 7], [3, 6]]
Australia
UK
UAE
Singapore
Canada
New
Zealand
Malaysia
USA
India
South
Africa
Ireland
Saudi
Arab
Qatar
Kuwait
Hongkong
Copyright 2016-2023 www.programmingshark.com - All Rights Reserved.
Disclaimer : Any type of help and guidance service given by us is just for reference purpose. We never ask any of our clients to submit our solution guide as it is, anywhere.