Удаление пробелов из строки

В этом примере посмотрим, как убрать лишние пробелы по краям строки. Покажем два способа — через встроенный метод strip() и через регулярное выражение.

Что нужно знать

Перед изучением примера полезно понимать:

Пример 1. Метод strip()

my_string = " Python "

print(my_string.strip())

Вывод

Python

Метод strip() удаляет пробельные символы и другие символы по краям строки. Если в строке встречаются специальные символы, например '\n', и нужно убрать только пробелы (но не переносы строк), это можно указать явно — передать пробел аргументом:

my_string = " \nPython "

print(my_string.strip(" "))

Вывод

Python

Пример 2. Через регулярное выражение

import re

my_string  = " Hello Python "
output = re.sub(r'^\s+|\s+$', '', my_string)

print(output)

Вывод

Hello python

В регулярном выражении \s обозначает любой пробельный символ, символ | — это «или», а + — «один или больше повторов» предыдущего шаблона. Конструкция ^\s+ ищет пробелы в начале строки, а \s+$ — в конце. Функция re.sub() заменяет всё найденное на пустую строку.