Как лучше всего преобразовать следующую строку в ожидаемую строку в формате Python.
"PowerEdgeSystem"
=> Power Edge System
"VMwareSystem"
=> VMware System
VMwareSystemEQUIPMENT
=> VMware System EQUIPMENT
Пробовал:
s = 'PowerEdgeSystem'
s = ''.join([' ' + c if i != 0 and c.isupper() else c for i, c in enumerate(s)])
Первая строка подходит, но не так хороша для второй строки. Тем не менее, мы можем проверить регистр «обеих» сторон конкретного символа и добавить пробел на основе этого, как показано ниже,
s = ''.join([' ' + c if i != 0 and c.isupper() and not c[i+1].isupper() else c for i, c in enumerate(s)])
Но код станет более запутанным. Я жду чего-то более понятного (если есть). Спасибо,