Мы уже видели, насколько мощным может быть Python при работе со строками. Мы можем искать в строке с помощью ключевого слова in, можем взять часть текста, используя срезы, узнать ее длину, форматировать с помощью f-строк и т.д. На самом деле, это лишь вершина айсберга.
В Python есть множество вспомогательных функций для более сложных манипуляций с текстом. Существует более 40 утилит, которые можно использовать в разных сценариях. Полный список этих методов можно найти на официальной странице Python: методы строк. Хорошая новость в том, что нет необходимости запоминать их все. Почти все они имеют очень интуитивные названия, и легко найти то, что нужно, с помощью быстрого поиска в Google. Мы рассмотрим некоторые очень популярные функции, которые время от времени оказываются полезными и часто используются при работе со строками.
# .upper() делает все буквы заглавными
s = 'What happened to Anna?'
up = s.upper()
print('Hi 123 this is Sally!'.upper()) # HI 123 THIS IS SALLY!
print(s) # What happened to Anna?
print(s.upper()) # WHAT HAPPENED TO ANNA?
print(up) # WHAT HAPPENED TO ANNA?
# .lower() делает все буквы строчными
s = 'What happened to Anna?'
low = s.lower()
print('Hi 123 this is Sally!'.lower()) # hi 123 this is sally!
print(s) # What happened to Anna?
print(s.lower()) # what happened to anna?
print(low) # what happened to anna?
# .title() делает заглавной первую букву каждого слова (формат заголовка)
s = 'What happened to Anna?'
title = s.title()
print('Hi 123 this is Sally!'.title()) # Hi 123 This Is Sally!
print(s) # What happened to Anna?
print(s.title()) # What Happened To Anna?
print(title) # What Happened To Anna?
# .capitalize() делает заглавной первую букву предложения
s = 'What happened to Anna?'
capital = s.capitalize()
print('Hi 123 this is Sally!'.capitalize()) # Hi 123 this is sally!
print(s) # What happened to Anna?
print(s.capitalize()) # What happened to anna?
print(capital) # What happened to anna?
# .swapcase() меняет строчные буквы на заглавные и наоборот
s = 'What happened to Anna?'
swapped = s.swapcase()
print('Hi 123 this is Sally!'.swapcase()) # hI 123 THIS IS sALLY!
print(s) # What happened to Anna?
print(s.swapcase()) # wHAT HAPPENED TO aNNA?
print(swapped) # wHAT HAPPENED TO aNNA?
Важно отметить, что методы строк не изменяют исходную переменную. Они создают новое значение и возвращают его. Исходное значение остается прежним. Поэтому, вызывая a.lower(), значение a не меняется. Оно остается таким же, но lower() возвращает новое значение, содержащее строчную версию a.
Задание
Вам дана команда и фрагмент текста. Ваша задача — применить эту команду к тексту.
Команда может быть любой из: upper, lower, capitalize, title, swap.
Команда может быть записана с заглавными и строчными буквами. Обработка команды не должна зависеть от регистра.
Первая строка программы содержит команду. Вторая строка содержит текст, который нужно изменить.
Вывод должен быть одной строкой — преобразованным текстом.