`object .__ doc__`를 원시 문자열로 가져옵니다
문제
얻을 방법이 있습니까? object.__doc__
소스 코드에 교리 자체의 'r'을 추가하는 것 외에는 원시 문자열로?
나는 내부에 라텍스 코드가 있고 ' r's, ' f 등이 문제를 일으키고 있습니다.
해결책
"원시 문자열"과 같은 파이썬 유형이 없습니다. 원시 문자열 리터럴, 그것은 단지 하나입니다 통사론 문자열 유형 인 상수 (즉, 리터럴)를 지정하기 위해 (많은 중에서) 접근하십시오. 그래서 "무언가를 얻는"것은 원시 문자열로서 "만이 이해가되지 않습니다. 당신은 할 수 있습니다 쓰다 원시 문자 리터럴로서의 docstrings (즉, 접두사와 함께 r
- 바로 이것이 바로 원시 문자열 리터럴, 파이썬 컴파일러에 대한 상수를 식별하는 특정 구문을 나타내거나, 그렇지 않으면 뒷가로를 두 배로 늘리는 것입니다 (백 슬래시 문자를 포함하여 일정한 문자열을 지정하는 대체 방법). 그들에게 어떤 식 으로든 "얻는"것과 관련이 있습니다.
다른 팁
원시 문자열과 그렇지 않으면 소스 코드 문자 구문의 문제입니다. 일단 구문 분석되면 '원시'문자열 객체가 없습니다. 결과 repr(object.__doc__)
항상 결과를 파이썬 소스 스크립트에 복사하여 붙여 넣고 원래 문자열을 가져올 수 있습니다.
고려하다:
>>> def foo():
... 'foo\nbar'
... pass
...
>>> foo.__doc__
'foo\nbar'
>>> print foo.__doc__
foo
bar
>>>
아니요, R을 추가해야합니다. r을 추가하지 않으면, 당신이 무엇을하든 원래 문자열을 되 찾을 수있는 방법이 없습니다.
원시 문자열이 마음에 들지 않으면 다른 대안은 여분의 백 슬래시로 문자열에서 백 슬래시를 피하는 것입니다.