Как убрать пробелы рядом со знаком +
a = 'qwert y + qwerty'
Когда я делаю replace() то он мне выдает так:
>>> print(a.replace(' ','').split('+'))
['qwerty', 'qwerty']
А когда я делаю просто split(), он мне выдает:
['qwert y ', ' qwerty']
Но мне надо чтобы он выдавал так:
['qwert y', 'qwerty']
Чтобы пробелы он убирал только рядом с + а в остальных местах чтоб он не трогал.
Ответы (3 шт):
Автор решения: Павел
→ Ссылка
Замените
print(a.replace(' ','').split('+'))
На
print([x.strip() for x in a.split('+')])
Автор решения: CrazyElf
→ Ссылка
В этом случае надёжнее воспользоваться регулярными выражениями, указав, что вокруг знака + может быть произвольное количество пробелов. А может и не быть, это сработает одинаково хорошо в обоих случаях:
import re
a = 'qwert y + qwerty'
b = re.split(r'\s*\+\s*', a)
print(b)
Вывод:
['qwert y', 'qwerty']
Расшифровка регулярного выражения \s*\+\s*:
\s*- произвольное число пробелов количеством от нуля или больше\+- знак+, его нужно экранировать бэкслэшем\s*- произвольное число пробелов количеством от нуля или больше