Мне нужно заменить некоторые символы следующим образом: &
➔ \ &
, #
➔ \ #
, ...
Я закодировал это следующим образом, но я думаю, что должен быть какой-то лучший способ. Есть подсказки?
strs = strs.replace('&', '\&')
strs = strs.replace('#', '\#')
...
Вы всегда собираетесь добавлять обратную косую черту? Если да, попробуйте
import re
rx = re.compile('([&#])')
# ^^ fill in the characters here.
strs = rx.sub('\\\\\\1', strs)
Возможно, это не самый эффективный метод, но я думаю, что это самый простой.
>>> string="abc&def#ghi"
>>> for ch in ['&','#']:
... if ch in string:
... string=string.replace(ch,"\\"+ch)
...
>>> print string
abc\&def\#ghi