Convert the return items from that generator to a dict and then use a list comprehension:
>>> lis = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> ylist = [(3, "three"),(4, "four"),(5, "five")]
>>> dic = dict(ylist)
>>> [x if x not in dic else (x, dic[x]) for x in lis]
[1, 2, (3, 'three'), (4, 'four'), (5, 'five'), 6, 7, 8, 9]