def evens(lst):
    """
    Returns a copy of lst, containing only the even elements

    Example: evens([1,2,3,4,5]) returns [2,4]
             events([1,3,5]) returns []

    Parameter lst: The list to copy
    Precondition: lst is a list of all numbers (either floats
    or ints), or an empty list
    """
    # LIST COMPREHENSION
    #return [x for x in lst if x % 2 == 0]

    # ACCUMULATOR PATTERN
    copy = []
    for x in lst:
        if x % 2 == 0:
            copy.append(x)
    return copy

    # THIS IS VERY DIFFERENT
    #return [ (x if x % 2 == 0 else -1) for x in lst ]