def match_with_gaps(my_word, other_word):
    """
    my_word: string with _ characters, current guess of secret word
    other_word: string, regular English word
    returns: boolean, True if all the actual letters of my_word match the
        corresponding letters of other_word, or the letter is the special
        symbol _ , and my_word and other_word are of the same length;
        False otherwise:
    """
    my_word = my_word.replace('_ ', '_')
    other_word_letters = []
    non_other_word_letters = []
    if len(my_word) != len(other_word):
        return False
    for index, letter in enumerate(my_word):
        other_letter = other_word[index]
        if letter == '_':
            non_other_word_letters.append(other_letter)
            if other_letter in other_word_letters:
                return False
        else:
            other_word_letters.append(other_letter)
            if letter != other_letter or letter in non_other_word_letters:
                return False
    return True