백 슬래시 대신에 정규 표현식을 사용하려고하지만 파이썬이 이중 백 슬래시를 삽입하는 것처럼 보입니다.파이썬 정규 표현식 중에 백 슬래시 삽입
>>> re.sub('a', '\\ b', 'a')
'\\ b'
더블 백 슬래시는 백 슬래시 (탈출 + 백 슬래시 = 백 슬래시)로되어 있지만, 그것은 문자 그대로의 것을 끝된다. 나는 이중 슬래시를 제거하면
, 그것은 모든 일을 인쇄하지 않습니다
>>> re.sub('a', '\ b', 'b')
'b'
을 그냥 한 백 슬래시에서 하위에 파이썬을 어떻게합니까?
네, 맞습니다! 불행히도,이 괴상함은 내가 doctest가 임베디드되어 있고, doctest interpreter가 \\ back을 얻었 기 때문에 코의 doctest가 실패하는 원인이되고 있습니다. 통역사가 어리석지 않게하려면 어떻게해야합니까? – cflewis
그렇지 않습니다. doctest에서'print'를 사용하거나'\\ ''를 사용하십시오. doctests의 전체 "지점"은 대화 형 사용과 동일하게 보입니다. 말하기 ... 그 doctest에서 날 문자열을 사용하고 있습니까? 당신은해야한다! – SingleNegationElimination
docstring 자체가 문자열이므로 Doctest로 실행되기 전에 "언 이스케이프"한 단계를 거치게됩니다. –