Python 3 need assistance
Question: 
    def bubble_down(L, start, end):
        """ (list, int, int) -> NoneType
    
        Bubble down through L from indexes end through start, swapping items that are out of place.
    
        >>> L = [4, 3, 2, 1, 0]
        >>> bubble_down(L, 1, 3)
        >>> L
        [4, 1, 3, 2, 0]
        """
        for i in range(start, end):
            if L[i] < L[i]:
                L[i - 1], L[i] = L[i], L [i - 1]
    

This function won't do.... and I don't get why docstring example L return [4,
1, 3, 2, 0], not [4, 1, 2, 3, 0]


Answer: You're almost there. Your comparison is wrong (you are comparing the same
element), and you probably want to think a bit more about your end bondary.
Most importantly, you want to iterate the process until there is no change.

Here's a correct version:

    
    
    def  bubble_down(to_sort, start=0, end=None):
        if end is None:
            end  = len(to_sort)
        did_change = True
        while did_change:
            did_change = False
            for i in range(start, end-1):
                if to_sort[i] > to_sort[i+1]:
                    did_change = True
                    to_sort[i], to_sort[i+1] = to_sort[i+1], to_sort[i]
    
        return to_sort
    
    
    >>> print(bubble_down([5, 7, 6 , 1]))
    [1, 5, 6, 7]
    >>> print bubble_down([4, 3, 2, 1, 0])
    [0, 1, 2, 3, 4]
    

