Работа со строками Python 3 - шпаргалка для начинающих
Не знаете как осуществляется работа со строками Python? В Python есть несколько встроенных функций для работы со строками. Встроенные функции - это методы, которые определены в языке программирования.
В этом руководстве мы рассмотрим некоторые строковые функции Python 3.
Работа со строками Python 3 - создание строк в верхнем и нижнем регистре
Функции str.upper() и str.lower() возвращают строку со всеми буквами исходной строки, преобразованными в прописные или строчные буквы. Символы в строке, которые не являются буквами, меняться не будут.
Преобразуем строку Sammy Shark в верхний регистр:
ss = "Sammy Shark"
print(ss.upper())
Вывод:
SAMMY SHARK
Теперь преобразуем эту же строку в нижний регистр:
print(ss.lower())
Вывод:
sammy shark
строк. Например, если пользователь записывает свое имя в нижнем регистре, мы все равно можем определить, хранится ли логин в базе данных.
Работа со строками Python 3 - логические методы строк питон
В Python есть несколько методов, которые оценивают логический тип значения. Они применяются для валидации полей форм регистрации. Если мы запрашиваем почтовый индекс, то поле должно «принимать» только числовую строку. Но когда пользователь вводит имя, строка должна состоять только из букв.
Существует ряд строковых методов, которые возвращают логические значения:
Метод | True если |
str.isalnum() | Строка состоит только из буквенно-цифровых символов (без специальных символов). |
str.isalpha() | Строка состоит только из буквенных символов (без специальных символов). |
str.islower() | Все буквенные символы строки имеют нижний регистр. |
str.isnumeric() | Строка состоит только из цифровых символов. |
str.isspace() | Строка состоит только из символов пробелов. |
str.istitle() | Строка заглавными буквами. |
str.isupper() | Все буквенные символы строки имеют верхний регистр. |
Рассмотрим несколько методов в действии:
number = "5"
letters = "abcdef"
print(number.isnumeric())
print(letters.isnumeric())
Вывод:
True
False
Метод str.isnumeric() возвращает для строки number = "5" значение True, а тот же метод для строки letters = "abcdef" возвращает значение False.
Точно так же мы можем проверить, являются ли буквенные символы строки заглавными, прописными или строчными.
Создадим несколько строк:
movie = "2001: A SAMMY ODYSSEY"
book = "A Thousand Splendid Sharks"
poem = "sammy lived in a pretty how town"
Теперь применим логические методы, которые проверяют регистр:
print(movie.islower())
print(movie.isupper())
print(book.istitle())
print(book.isupper())
print(poem.istitle())
print(poem.islower())
Выполним код и посмотрим на результат:
Вывод для строки movie:
False
True
Вывод для строки book:
True
False
Вывод для строки poem:
False
True
Проверка регистра строки позволяет правильно отсортировать данные. Логические методы также полезны для валидации полей форм на сайте.
Как определяется длина строки Python?
Метод len Python 3 возвращает количество символов в строке. Его можно использовать в тех случаях, когда необходимо установить минимальную или максимальную длину пароля. А также, если необходимо усечь длинные строки.
Чтобы продемонстрировать этот метод в действии, найдем длину предложения:
open_source = "Sammy contributes to open source."
print(len(open_source))
Вывод:
33
Мы инициализируем переменную open_source строковым значением "Sammy contributes to open source.". Затем передаем эту переменную в метод len() с помощью len(open_source). После этого используем print() для вывода результата на экран.
Помните, что любой символ, заключенный в одинарные или двойные кавычки, будет учитываться методом len().
Методы join в Python, split() и функция replace Python 3
Метод join Python объединяет две строки и разделяет их указанным символом.
Давайте создадим строку:
balloon = "Sammy has a balloon."
Теперь используем метод join в питоне, чтобы добавить пробел к этой строке. Мы можем сделать так:
" ".join(balloon)
Если мы выведем это:
print(" ".join(balloon))
то увидим, что в новой возвращаемой строке добавлены пробелы между символами правой части строки.
Вывод:
S a m m y h a s a b a l l o o n .
Функция join python также может использоваться для возврата строки, которая является перевернутой исходной строкой:
print("".join(reversed(balloon)))
Вывод:
.noollab a sah ymmaS
Метод str.join() также полезен для объединения списка строк в новую единственную строку.
Создадим разделенную запятыми строку из списка строк:
print(",".join(["sharks", "crustaceans", "plankton"]))
Вывод:
sharks,crustaceans,plankton
Если нужно добавить запятую и пробел между строковыми значениями в, можно просто переписать выражение с пробелом после запятой: ",
".join(["sharks", "crustaceans", "plankton"]).
Также можно и разбивать строки. Для этого используется метод str.split():
print(balloon.split())
Вывод:
['Sammy', 'has', 'a', 'balloon.']
Метод str.split() возвращает список строк, разделенных пробелами, если никакой другой параметр не задан.
Также можно использовать str.split() для удаления определенных частей строки. Например, давайте удалим из строки букву a:
print(balloon.split("a"))
Вывод:
['S', 'mmy h', 's ', ' b', 'lloon.']
Теперь буква a удалена, и строки разделены там, где она располагалась.
Метод str.replace() применять для замены части строки. Допустим, что шарик, который был у Сэмми, потерян. Поскольку у Сэмми больше нет этого шарика, изменим подстроку "has" на новую строку "had":
print(balloon.replace("has","had"))
В скобках первая подстрока - это то, что мы хотим заменить, а вторая подстрока - это то, на что мы заменяем первую подстроку.
Вывод:
Sammy had a balloon.
Методы строк Python str.join(), str.split() и str replace Python позволяют более эффективно управлять строками в Python.
Заключение
В этом руководстве были рассмотрены некоторые встроенные методы строк Python, которые можно использовать для работы со строками в Python-программах.