def getWords(text):
    """
        Returns a list of words, where a word is defined as a
        maximally connected substring of uppercase or lowercase
        alphabetic letters, as defined by "a".isalpha()
        >>> get_words('Hello world, my name is... Élise!')  
        ['Hello', 'world', 'my', 'name', 'is', 'Élise']
    """
return ''.join(c if c.isalnum() else ' ' for c in text).split()
Extracting words from a string, removing punctuation and returning a list with separated words in Python