Способы удаления лишних пробелов в строке

Опубликован: 29.11.2023 100

При работе со строковыми данными, полученными из разных источников, довольно часто возникает потребность в удалении лишних пробелов как в начале (в конце), так и в середине строки.

В Python для удаления пробелов в строке существует много различных способов, но наиболее простыми и эффективными являются методы с использованием:

  • функций strip(), rstrip(), lstrip(), которые удаляют начальные и конечные пробелы в строке;
  • функций join() и split(), которые помогут удалить повторяющиеся пробелы и другие символы не только в начале и в конце, но и в середине строки.

Функции strip(), rstrip(), lstrip().

Строковая функция strip() удаляет как начальные, так и конечные пробелы в строке. Если же нужно удалить только начальные пробелы, то можно воспользоваться функцией lstrip(). Для удаления только конечных пробелов используют функцию rstrip().

s = "   Строка,  в которой   нужно      удалить    лишние    пробелы.         "

s.strip()  # удаляет пробелы в начале и в конце строки
'Строка,  в которой   нужно      удалить    лишние    пробелы.'

s.lstrip()  # удаляет пробелы только в начале строки
'Строка,  в которой   нужно      удалить    лишние    пробелы.         '

s.rstrip()  # удаляет пробелы только в конце строки
'   Строка,  в которой   нужно      удалить    лишние    пробелы.'

Функция join() и split().

Если вы хотите избавиться от всех повторяющихся пробелов и других служебных символов в строке, можно использовать функцию join() совместно с функцией split().

Функция split() без аргументов разбивает строку s на список слов, используя в качестве разделителя пробелы, а затем функция join() преобразует полученный список в строку, используя в качестве разделителя один пробел. В результате получается строка new_string без лишних пробелов.

s = "   Строка,  в которой   нужно      удалить    лишние    пробелы.         "
new_string = " ".join(s.split())
print(new_string)
'Строка, в которой нужно удалить лишние пробелы.'

Похожие посты

Оценка основных статистических метрик набора данных в Python

Область эффективного использования lambda функции в Python

Логические выражения if ... else в Pythonic стиле

Использование аннотации типов в Python

Комментариев нет.