#python #string #replace #backslash
#питон #строка #заменять #обратная косая черта
Вопрос:
Я хочу знать, как использовать str.replace()
функцию Python (или аналогичную) для замены обратных косых черт…
Когда я пытаюсь это сделать:
gt;gt;gt; temp = r"abcabc" gt;gt;gt; temp.replace(r''', 'backslash') 'abc\abc' # For some reason, temp.replace() does not replace '' with 'backslash' even when using raw variable gt;gt;gt; temp.replace(r'\', 'backslash') # Same result 'abc\abc'
Как мне это исправить? И почему? (Linux, Debian/Ubuntu, процессор x86_x64)
Ответ №1:
Вам нужно избежать обратной косой черты —
temp = r"abcabc" temp.replace('\', 'backslash') 'abcbackslashabc'
Комментарии:
1. Здесь важно не использовать
r
(необработанную строку) для одной обратной косой черты, потомуr'\'
что это строка с двумя обратными косыми чертами. Да, это сбивает с толку.2. Я понимаю…
\
это как ярлык или псевдоним для… и
r'\'
на самом деле это две обратные косые черты