p = ['**', 'foo', '*', 'bar', 'bar', '**', '**', 'baz']
q = []
for key, iter in itertools.groupby(p):
    q.extend([key] * (1 if key == '**' else len(list(iter))))
print(q)
Удалить определенные последовательные дубликаты в списке