code: def join_and(value):
      
      # convert numbers to strings
      value = [str(item) for item in value]
  
      if len(value) == 1:
          return value[0]
      if len(value) == 2:
          return "%s and %s" % (value[0], value[1])
  
      # join all but the last element
      all_but_last = ", ".join(value[:-1])
      return "%s and %s" % (all_but_last, value[-1])
docs: Given a list of strings, format them with commas and spaces, but
      with 'and' at the end.
  
      >>> join_and(['apples', 'oranges', 'pears'])
      "apples, oranges, and pears"
  
      There is surely a better home for this