<MyRusakov.ru />

Разработчик игр на Unreal Engine

Разработчик игр на Unreal Engine

Этот комплект с нуля всего за 7 месяцев сделает Вас Unreal-разработчиком. И при этом учиться достаточно 1 час в день.

Начнёте Вы с основ программирования, постепенно перейдя к C++. Затем очень подробно изучите Unreal Engine, и после научитесь программировать на C++ в Unreal Engine. В конце создадите крупный проект на C++ в Unreal Engine для своего портфолио.

Комплект содержит:

- 416 видеоуроков

- 95 часов видео

- 1024 задания для закрепления материала из уроков

- 3 финальных тестирования

- 4 сертификата

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Методы строк в Python: strip, split, join, replace и другие полезные приёмы

Методы строк в Python: strip, split, join, replace и другие полезные приёмы

Если вы ищете методы строк Python и хотите быстро понять, какие из них действительно нужны в ежедневной практике, эта статья для вас. Строка в Python — это объект типа str, а значит у неё есть готовые методы для очистки, поиска, разбиения, замены и проверки текста.

Важно: строки в Python неизменяемы. Любой метод не меняет исходную строку, а возвращает новую.

text = '  Python  '
new_text = text.strip()

print(text)      # '  Python  '
print(new_text)  # 'Python'

strip, lstrip и rstrip: очищаем строку от лишних символов

Метод strip() чаще всего используют для удаления пробелов, переносов строк и табуляций по краям строки. Это особенно полезно при обработке пользовательского ввода, данных из файлов, API или форм.

name = '  Анна \n'
clean_name = name.strip()

print(clean_name)  # Анна

Есть также методы lstrip() и rstrip(): первый очищает слева, второй — справа.

value = '---Python---'

print(value.lstrip('-'))  # Python---
print(value.rstrip('-'))  # ---Python
print(value.strip('-'))   # Python

Совет: если вы сравниваете строки, которые пришли извне, почти всегда сначала применяйте strip(). Иначе строка 'admin ' не будет равна 'admin'.

split: разбиваем строку на список

Метод split() превращает строку в список частей. По умолчанию он делит строку по любому количеству пробельных символов.

words = 'Python это простой язык'.split()
print(words)
# ['Python', 'это', 'простой', 'язык']

Можно указать конкретный разделитель:

tags = 'python,web,django,api'
result = tags.split(',')

print(result)
# ['python', 'web', 'django', 'api']

Частая задача — разобрать строку с настройками:

row = 'host=localhost;port=5432;debug=true'
parts = row.split(';')

settings = {}
for part in parts:
    key, value = part.split('=')
    settings[key] = value

print(settings)
# {'host': 'localhost', 'port': '5432', 'debug': 'true'}

Рекомендация: если разделитель может отсутствовать, не распаковывайте результат split() вслепую. Иначе можно получить ошибку.

part = 'debug=true'

if '=' in part:
    key, value = part.split('=', 1)
    print(key, value)

Обратите внимание на второй аргумент 1: он ограничивает количество разбиений. Это безопаснее, если значение тоже может содержать знак равенства.

join: собираем список строк в одну строку

Метод join() работает наоборот: он объединяет элементы последовательности в строку с выбранным разделителем.

words = ['Python', 'это', 'удобно']
sentence = ' '.join(words)

print(sentence)  # Python это удобно

Для CSV-подобной строки можно использовать запятую:

tags = ['python', 'backend', 'api']
line = ', '.join(tags)

print(line)  # python, backend, api

Типичная ошибка новичков: join() умеет объединять только строки. Если в списке числа, их нужно сначала преобразовать.

numbers = [10, 20, 30]
text = ', '.join(str(number) for number in numbers)

print(text)  # 10, 20, 30

Если вам хочется системно разобраться не только со строками, но и с функциями, коллекциями, файлами и реальными задачами, посмотрите практический курс «Программирование на Python с Нуля до Гуру» — он хорошо подходит для последовательного изучения языка с нуля.

replace: заменяем фрагменты текста

Метод replace() заменяет одну подстроку на другую.

phone = '+7 (999) 123-45-67'
clean_phone = phone.replace(' ', '').replace('(', '').replace(')', '').replace('-', '')

print(clean_phone)  # +79991234567

Можно ограничить количество замен третьим аргументом:

text = 'one one one'
print(text.replace('one', 'two', 1))  # two one one

Совет: для простых замен используйте replace(), а для сложных шаблонов — регулярные выражения. Не усложняйте код там, где достаточно обычного метода строки.

lower, upper и casefold: приводим текст к единому виду

Методы lower() и upper() меняют регистр строки. Это удобно для поиска и сравнения без учёта регистра.

answer = 'Да'

if answer.lower() == 'да':
    print('Пользователь согласился')

Для более корректного сравнения Unicode-строк есть casefold(). В обычных русскоязычных проектах часто хватает lower(), но для международных данных casefold() предпочтительнее.

login = 'Admin'

if login.casefold() == 'admin':
    print('Вход разрешён')

startswith и endswith: проверяем начало и конец строки

Методы startswith() и endswith() возвращают True или False. Они отлично подходят для проверки URL, расширений файлов, префиксов команд.

url = 'https://example.com'

if url.startswith('https://'):
    print('Безопасный протокол')
filename = 'report.pdf'

if filename.endswith('.pdf'):
    print('Это PDF-файл')

Можно проверять сразу несколько вариантов, передав кортеж:

image = 'photo.jpeg'

if image.endswith(('.jpg', '.jpeg', '.png', '.webp')):
    print('Это изображение')

find, count и оператор in: поиск внутри строки

Чтобы проверить наличие подстроки, чаще всего достаточно оператора in.

email = 'user@example.com'

if '@' in email:
    print('Похоже на email')

find() возвращает индекс первого совпадения или -1, если ничего не найдено.

text = 'Изучаем Python'
position = text.find('Python')

print(position)  # 8

count() считает количество вхождений:

message = 'ha ha ha'
print(message.count('ha'))  # 3

isalpha, isdigit и другие проверки

Python умеет проверять, из каких символов состоит строка. Это полезно для простой валидации.

print('Python'.isalpha())   # True
print('12345'.isdigit())    # True
print('Python3'.isalnum())  # True
print('   '.isspace())      # True

Но не путайте простую проверку с полноценной валидацией. Например, isdigit() не подходит для проверки отрицательных чисел или дробей.

value = '-10'
print(value.isdigit())  # False

if value.startswith('-') and value[1:].isdigit():
    print('Это отрицательное целое число')

Практический пример: очищаем список email-адресов

Объединим несколько методов строк Python в одной задаче: получим строку с email-адресами, очистим пробелы, приведём к нижнему регистру и оставим только похожие на email значения.

raw = '  ADMIN@SITE.RU, user@example.com, bad-email, test@domain.org  '
emails = raw.split(',')

valid_emails = []
for email in emails:
    email = email.strip().casefold()
    if '@' in email and email.endswith(('.ru', '.com', '.org')):
        valid_emails.append(email)

print(valid_emails)
# ['admin@site.ru', 'user@example.com', 'test@domain.org']

Краткая шпаргалка по методам строк

  • strip() — убрать лишние символы по краям строки.
  • split() — разбить строку на список.
  • join() — собрать список строк в одну строку.
  • replace() — заменить фрагмент текста.
  • lower(), upper(), casefold() — изменить регистр.
  • startswith(), endswith() — проверить начало или конец строки.
  • find(), count(), in — найти подстроку.
  • isalpha(), isdigit(), isalnum() — проверить состав строки.

Вывод

Методы строк в Python — это базовый инструмент, который нужен в парсинге, обработке форм, работе с файлами, API и консольными программами. Начните с strip, split, join, replace и проверок через startswith/endswith: уже этого набора хватит для большинства повседневных задач.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (https://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: https://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: https://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.