Я думаю, что регулярные выражения немного перегружены в stackoverflow для вопросов начинающих.Для этого вопроса, хотя они определенно правильный выбор.Тем не менее, вы также попросили составить список, который решает проблему, и кто я такой, чтобы отказать вам?
def remove_spaces(s):
s = s.join(['A', 'A'])
return ''.join([c for i, c in enumerate(s)
if c!=' ' or not (s[i-1]+s[i+1]).islower()][1:-1])