On 9 Juli, 22:25, Michiel Overtoom <[EMAIL PROTECTED]> wrote: > Paul & Robert wrote... > > d = ["soep", "reeds", "ook"] > >print ', '.join(d) > > soep, reeds, ook > > I occasionally have a need for printing lists of items too, but in the form: > "Butter, Cheese, Nuts and Bolts". The last separator is the word 'and' > instead of the comma. The clearest I could come up with in Python is below. > I wonder if there is a more pythonic solution for this problem. Maybe > something recursive?
[snip] > def pretty(f): > if len(f)==0: return '' > if len(f)==1: return f[0] > sepwithcommas=f[:-1] > sepwithand=f[-1] > s=', '.join(sepwithcommas) > if sepwithand: > s+=' and '+sepwithand > return s def pretty(names): return ' and '.join(', '.join(names).rsplit(', ', 1)) > friends=['Anne','Bob','Chris','Debbie','Eve','Fred'] print pretty(friends) -- http://mail.python.org/mailman/listinfo/python-list