Python ProgrammingPython Programming

Identify duplicate values in a list in Python

List of duplicate and unique Values

thelist = [1, 2, 3, 4, 4, 5, 5, 6, 1]


def dup(x):
    duplicate = []
    unique = []
    for i in x:
        if i in unique:
            duplicate.append(i)
        else:
            unique.append(i)
    print("Duplicate values: ", duplicate)
    print("Unique Values: ", unique)


dup(thelist)
Duplicate values:  [4, 5, 1]
Unique Values:  [1, 2, 3, 4, 5, 6]

Get all index for duplicate element

thelist = [1, 2, 3, 4, 4, 5, 5, 6, 1]

x = set(thelist)
dup = []
for c in x:
    if(thelist.count(c) > 1):
        indices = [i for i, x in enumerate(thelist) if x == c]
        dup.append((c, indices))
print(dup)
[(1, [0, 8]), (4, [3, 4]), (5, [5, 6])]