def substring_list(s, k):
    """ Takes a string, s, and and length, k, and returns a list of all
        the substrings in s of length k (including overlap).

        >>> substring_list('abcdefg', 2)
        ['ab', 'bc', 'cd', 'de', 'ef', 'fg']
    """

    my_list = []                            # create empty list
    for elem in range(len(s) - k + 1):      # use + 1 to capture the overlap
        my_list.append(s[elem:elem + k])    # append the list with substrings
    return my_list