Опубликован: 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
Комментариев нет.