Задача: День CAPS LOCK позади!

22 октября – это день CAPS LOCK. Во все дни, кроме этого, каждое предложение должно быть в нижнем регистре, поэтому напишите функцию для нормализации предложения.

Создайте функцию, которая принимает строку. Если в строке все символы в верхнем регистре, преобразуйте их в нижний регистр и добавьте восклицательный знак в конце.

Пример:

normalize("CAPS LOCK DAY IS OVER") ➞ "Caps lock day is over!"

normalize("Today is not caps lock day.") ➞ "Today is not caps lock day."

normalize("Let us stay calm, no need to panic.") ➞ "Let us stay calm, no need to panic."

Примечание:

Каждая строка представляет собой предложение и должна начинаться с заглавного символа.

Варианты решений:

def normalize(txt):
	return txt.capitalize() + ('!' if txt.isupper() else '')
normalize = lambda t: t.capitalize() + '!'*t.isupper()
def normalize(txt):
	txt = txt.split()
	last, txt[0] = '!' if txt[-1][-1] != '.' else '', txt[0].capitalize()
	return txt[0] + ' ' + ' '.join(txt[1:]).lower() + last
def normalize(txt):
    return '{}!'.format(txt.lower().capitalize()) if txt.isupper() else txt

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *