Reemplace las cuerdas vacías en la tupla

¿Hay una manera fácil (con suerte de una sola línea) para reemplazar ” con algo como ‘-‘?
Muchas gracias.

tup = (1,2,'ABC','','','','text') 

¿Qué tal lo siguiente?

  tuple('-' if x == '' else x for x in tup) 

Como comenta Felix Kling , las tuplas son inmutables , por lo que lo mejor que puedes hacer es devolver una nueva.