25 lines
633 B
Python
25 lines
633 B
Python
def shortenName(text):
|
|
capitals = [l for l in text if l.isupper()]
|
|
# Нет заглавных.
|
|
if len(capitals) == 0:
|
|
return text
|
|
|
|
capId = 0
|
|
# Первая - заглавная.
|
|
if text[0].isupper():
|
|
capId = 1
|
|
|
|
# Заглавная лишь первая.
|
|
if (
|
|
capId == 1 and
|
|
len(capitals) == 1
|
|
):
|
|
return text
|
|
|
|
# Убираем первое заглавное слово.
|
|
if capId == 1:
|
|
capitals = capitals[1:]
|
|
# Есть ещё заглавные.
|
|
firstCap = text.find(capitals[0])
|
|
return text[:firstCap] + "".join(capitals)
|