I have a list of tuples and need to delete tuples if its 1st item is matching with 1st item of other tuples in the list. 3rd item may or may not be the same, so I cannot use
You can get the first element of each group in a grouped, sorted list:
from itertools import groupby
from operator import itemgetter
a = [(0, 13, 'order1'), (14, 27, 'order2'), (14, 27, 'order2.1'), (0, 13, 'order1'), (28, 41, 'order3')]
result = [list(g)[0] for k, g in groupby(sorted(a), key=itemgetter(0))]
print(result)