def comma_str_from_list(lst):
    """
        Takes a list or other string-convertible iterable and returns
        a comma-delinated string.

        Arguments:
        - lst -- the list or iterable to process.

        Returns:  a string with the iterable's elements separated by
         commas and an "and".
       -----------------------------------------------------------------
    """
    string = ""
    for n, element in enumerate(lst):
        # First make sure the element is in string form.
        element = str(element)
        string += element
        if n == len(lst) - 2:
            string += " and "
        elif n < len(lst) - 2:
            string += ", "
        # end if
    # end for
    return string