strip(), rstrip() и lstrip() в Python

Очищаем строки с помощью методов strip(), rstrip() и lstrip() в Python

Методы strip(), rstrip() и lstrip() — это встроенные методы в Python, которые используются для удаления пробелов и других символов с конца и/или начала строки.

В этой статье мы рассмотрим, как использовать методы strip(), rstrip() и lstrip() в Python, и приведем множество примеров использования этих методов.

Синтаксис

Методы strip(), rstrip() и lstrip() имеют следующий синтаксис:

str.strip([chars])
str.rstrip([chars])
str.lstrip([chars])

где:

  • str — строка, которую необходимо обработать
  • chars (необязательный параметр) — символы, которые нужно удалить с конца и/или начала строки (по умолчанию удаляются пробелы)

Метод strip() удаляет символы с конца и начала строки. Метод rstrip() удаляет символы только с конца строки, а метод lstrip() — только с начала строки.

Примеры использования методов strip(), rstrip() и lstrip()

Удаление пробелов

Пример ниже показывает, как использовать метод strip() для удаления пробелов с конца и начала строки:

s = '   hello world   '
print(s.strip()) # 'hello world'

Удаление символов

Методы strip(), rstrip() и lstrip() могут быть использованы для удаления любых символов с конца и/или начала строки. Например, следующий пример показывает, как использовать метод rstrip() для удаления всех вхождений символа x с конца строки:

s = 'hello worldxxxxx'
print(s.rstrip('x')) # 'hello world'

Удаление нескольких символов

Как использовать метод lstrip() для удаления всех вхождений символов h и e с начала строки:

s = 'hello world'
print(s.lstrip('he')) # 'llo world'

Использование с символами новой строки

Следующий пример показывает, как использовать метод rstrip() для удаления всех вхождений символа новой строки \n с конца строки:

s = 'hello world\n\n'
print(s.rstrip('\n')) # 'hello world'

Использование с несколькими символами

Метод strip() для удаления всех вхождений символов h, e и пробела с конца и начала строки:

s = '   hello world   '
print(s.strip('he ')) # 'llo world'

Использование в циклах

Методы strip(), rstrip() и lstrip() могут использоваться в циклах. Рассмотрим, как использовать метод lstrip() для удаления всех пробелов с начала каждой строки в списке:

lines = ['   hello', ' world   ', '  python  ']
for line in lines:
    print(line.lstrip())

Использование со строками ввода

Эти методы могут быть использованы со строками ввода, чтобы удалить лишние пробелы или символы. Удаление пробелов с конца и начала строки, введенной пользователем:

s = input('Введите строку: ')
print(s.strip())

Использование в условных конструкциях

Методы strip(), rstrip() и lstrip() могут быть использованы в условных конструкциях для проверки содержимого строки после удаления символов с конца и/или начала строки. Пример условной конструкции для проверки, заканчивается ли строка символом x:

s = 'hello worldxxxxx'
if s.rstrip('x').endswith('x'):
    print('Строка заканчивается на x')
else:
    print('Строка не заканчивается на x')

Использование с регулярными выражениями

Как использовать регулярное выражение для удаления всех символов, кроме букв и цифр, с конца и начала строки:

import re

s = '  *^&%hello world*^&%  '
pattern = re.compile(r'[^a-zA-Z0-9]')
print(pattern.sub('', s)) # 'helloworld'

Заключение

Методы strip(), rstrip() и lstrip() являются важными методами работы со строками в Python. Они позволяют удалять символы с конца и/или начала строки, включая пробелы и другие символы.

Содержание: