def foo3(s): join_2_strings = lambda x,y: '.'.join((x, y)) return itertools.accumulate(s.split('.'), join_2_strings)