Merge Two Lists Without Duplicates - Python Last Updated : 23 Jul, 2025 Comments Improve Suggest changes 2 Likes Like Report We are given two lists containing elements and our task is to merge them into a single list while ensuring there are no duplicate values. For example: a = [1, 2, 3, 4] and b = [3, 4, 5, 6] then the merged list should be: [1, 2, 3, 4, 5, 6]Using set()set() function automatically removes duplicates making it the most efficient way to merge two lists while keeping only unique elements. Python a = [1, 2, 3, 4] b = [3, 4, 5, 6] res = list(set(a + b)) print(res) Output[1, 2, 3, 4, 5, 6] Explanation:a + b merges both lists and set(a + b) removes duplicates.list(set(...)) converts the set back into a list.Using Dictionary Keys (dict.fromkeys())Since dictionary keys are unique, we can use dict.fromkeys() to remove duplicates while preserving the order of elements. Python a = [1, 2, 3, 4] b = [3, 4, 5, 6] res = list(dict.fromkeys(a + b)) print(res) Output[1, 2, 3, 4, 5, 6] Explanation:a + b merges both lists and dict.fromkeys(a + b) creates a dictionary where keys are the merged elements (removing duplicates).list(...) converts the dictionary keys back into a list preserving order.Using a for LoopWe can manually iterate through both lists and add elements to a new list only if they are not already present. Python a = [1, 2, 3, 4] b = [3, 4, 5, 6] res = [] for x in a + b: if x not in res: res.append(x) print(res) Output[1, 2, 3, 4, 5, 6] Explanation:We initialize an empty list result and iterate through a + b, check if x is already in result.If x is not in result then only we append it.Using List Comprehension with setThis method combines a set for fast lookups with a list comprehension to preserve order efficiently. Python a = [1, 2, 3, 4] b = [3, 4, 5, 6] seen = set() res = [x for x in a + b if x not in seen and not seen.add(x)] print(res) Output[1, 2, 3, 4, 5, 6] Explanation:We initialize an empty set() called seen to track unique elements.We iterate through a + b using list comprehension and if x is not in seen then it is added to result, seen.add(x) adds x to seen ensuring duplicates are ignored. Create Quiz Comment H harshasi1eet Follow 2 Improve H harshasi1eet Follow 2 Improve Article Tags : Python Python Programs Python list-programs python Explore Python FundamentalsPython Introduction 2 min read Input and Output in Python 4 min read Python Variables 4 min read Python Operators 4 min read Python Keywords 2 min read Python Data Types 8 min read Conditional Statements in Python 3 min read Loops in Python - For, While and Nested Loops 5 min read Python Functions 5 min read Recursion in Python 4 min read Python Lambda Functions 5 min read Python Data StructuresPython String 5 min read Python Lists 4 min read Python Tuples 4 min read Python Dictionary 3 min read Python Sets 6 min read Python Arrays 7 min read List Comprehension in Python 4 min read Advanced PythonPython OOP Concepts 11 min read Python Exception Handling 5 min read File Handling in Python 4 min read Python Database Tutorial 4 min read Python MongoDB Tutorial 3 min read Python MySQL 9 min read Python Packages 10 min read Python Modules 3 min read Python DSA Libraries 15 min read List of Python GUI Library and Packages 3 min read Data Science with PythonNumPy Tutorial - Python Library 3 min read Pandas Tutorial 4 min read Matplotlib Tutorial 5 min read Python Seaborn Tutorial 3 min read StatsModel Library - Tutorial 3 min read Learning Model Building in Scikit-learn 6 min read TensorFlow Tutorial 2 min read PyTorch Tutorial 6 min read Web Development with PythonFlask Tutorial 8 min read Django Tutorial | Learn Django Framework 7 min read Django ORM - Inserting, Updating & Deleting Data 4 min read Templating With Jinja2 in Flask 6 min read Django Templates 5 min read Build a REST API using Flask - Python 3 min read Building a Simple API with Django REST Framework 3 min read Python PracticePython Quiz 1 min read Python Coding Practice 1 min read Python Interview Questions and Answers 15+ min read Like