Determining if a string is an Isogram
I would write it as a mix of your two solutions. Checking if the set of the string has the same length as the string is probably the best way to check for an isogram.

On the other hand, the control structures in your first code are nicer, because there is less nesting and it does the same thing.

You should make sure you use a consistent number of spaces for indentation. You seem to be using 2, 4 and 6. PEP8, Python's official style-guide, recommends 4.

def is_isogram(word):
    if not isinstance(word, str):
        raise TypeError('Argument should be a string')
    if not word:
        isogram = False
    else:
        isogram = len(word) == len(set(word.lower()))
    return word, isogram


Does the specification say anything about if A and a should count as the same letter?