words = []
for span in spans:
    if len(span) < 3:
        words.extend(span)
else:
    words.append('%s to %s' % (span[0], span[-1]))
if len(days) == 1:
    return words[0]
elif len(days) == 2:
    return '%s and %s' % tuple(words)
else:
    return ', '.join(words)
Python: преобразование («понедельник», «вторник», «среда») в «с понедельника по среду»