Строки и их методы
1. Что такое строка
Строка (
str
) — это неизменяемая последовательность символов.Можно создавать с помощью одинарных
'...'
, двойных"..."
, либо тройных кавычек'''...'''
/"""..."""
для многострочного текста.
s1 = "Hello"
s2 = 'World'
s3 = """Многострочный
текст"""
2. Основные методы строк
str.upper()
Преобразует в верхний регистр
"hello".upper()
→ "HELLO"
str.lower()
Преобразует в нижний регистр
"HELLO".lower()
→ "hello"
str.title()
Заглавная буква у каждого слова
"hello world".title()
→ "Hello World"
str.capitalize()
Заглавная буква у первого слова
"hello world".capitalize()
→ "Hello world"
str.strip()
Убирает пробелы или символы с начала и конца
" text ".strip()
→ "text"
str.lstrip()
/ str.rstrip()
Убирает пробелы слева/справа
" text".lstrip()
→ "text"
str.replace(old, new)
Замена подстроки
"foo".replace("f","b")
→ "boo"
str.split(sep=None)
Разделяет строку на список
"a,b,c".split(",")
→ ['a','b','c']
str.join(iterable)
Объединяет элементы списка
",".join(['a','b','c'])
→ "a,b,c"
str.startswith(prefix)
Проверка начала строки
"hello".startswith("he")
→ True
str.endswith(suffix)
Проверка окончания строки
"hello".endswith("lo")
→ True
str.find(sub)
Индекс подстроки или -1
"hello".find("l")
→ 2
str.count(sub)
Количество вхождений
"hello".count("l")
→ 2
str.isdigit()
Все символы цифры
"123".isdigit()
→ True
str.isalpha()
Все символы буквы
"abc".isalpha()
→ True
str.isalnum()
Все символы буквы или цифры
"abc123".isalnum()
→ True
3. Особенности строк
Неизменяемость
Любая операция возвращает новый объект, оригинал не меняется.
s = "hello"
s.upper() # "HELLO", но s всё ещё "hello"
Индексация и срезы
s = "hello"
print(s[0]) # 'h'
print(s[-1]) # 'o'
print(s[1:4]) # 'ell'
Поддержка логических операций
in
/not in
:
"he" in "hello" # True
4. Применение в автотестах
Проверка текста в API или UI
response = "Success: user created"
assert "Success" in response
Обработка данных и логов
line = " ERROR: Invalid input "
assert line.strip().startswith("ERROR")
Разделение и объединение данных
csv = "a,b,c"
fields = csv.split(",")
assert ",".join(fields) == csv
Валидация формата
username = "Alice123"
assert username.isalnum() # только буквы и цифры
💡 Вывод:
Строки — неизменяемые последовательности символов, поддерживают методы для изменения регистра, поиска, замены, разбиения и объединения.
Очень полезны для обработки текста, логов, данных API и проверок UI в автотестах.
Last updated
Was this helpful?