2012-05-21 5 views
4

은 논평 아웃하는 여러 줄을 우리가 삼중 따옴표 을 주석 중첩 된 삼중 따옴표 파이썬에서

def x(): 
    """This code will 
     add 1 and 1 """ 
    a=1+1 

하지만 이미 트리플 다른 주석으로 블록을 많이 (포함되어있는 코드 블록을 주석 처리해야하는 경우를 사용 의견 인용). 예를 들어,이 함수를 완전히 주석 처리하고 싶다면 ...

""" 
def x(): 
    """This code will 
     add 1 and 1 """ 
    a=1+1 
""" 

이것은 작동하지 않습니다. 이러한 코드 블록을 어떻게 주석 처리 할 수 ​​있습니까? 파이썬에서

+2

당신이 내부에 큰 따옴표가있는 경우, 외부에 작은 따옴표를 사용하여 검색하는 '웹 페이지 소스 코드' ''. "" "" "" "" "" '''. 이 작품. – Josiah

답변

10

은 논평 아웃하는 여러 줄을 우리가 하나의 방법으로 일을의 트리플 쉼표

를 사용하고, 기술적으로 문자가 아닌 댓글을 문자열을 사용하고 있습니다. 그리고 이것이 공식화되었지만 주석을 작성하는 이러한 방식은 사용자가 관찰 한 단점을 가지고 있습니다. 중첩 된 블록을 주석 처리 할 수 ​​없습니다.

파이썬에는 여러 줄 주석이 중첩되어 있지 않으므로 간단합니다. 중첩 된 주석을 허용하는 여러 줄을 주석으로 처리하려면 안전한 선택은 각 줄을 주석 처리하는 것입니다.

대부분의 편집자는 주석을 제거하거나 여러 줄로 작성하는 명령이 있습니다. 사실 '''"""nested """'''을 사용할 수 있습니다 당신을 중첩 단일 수준, 또는 그와 반대로 들어

1


. 그러나 나는 그것을 추천하지 않을 것이다.

+0

그러나 OP 예제의 "주석"은 모두 docstring이므로 런타임시 인라인 문서를 사용할 수없는 환경에서 온 누군가에게 혼동을 줄 수 있습니다. – lvc

+3

"Guusing"(https://twitter.com/#!/gvanrossum/status/112670605505077248)에 의해 기술이 승인되었다는 점을 고려하면 "Abusing"는 조금 지나치게 보입니다. "Python 팁 : docstring으로 사용하지 않는 한, 그들은 코드를 생성하지 않습니다! :-) " – DSM

+1

Emacs 나 VIM을 사용하더라도 라인의 시작 부분에 #을 붙이면 편집기가됩니다. 그것을하는 나쁜 방법. 트리플 견적 방법은이를위한 사실상의 표준이며 OP의 질문은 합법적 인 질문입니다. – ely

4

내가 종종 간단한 해킹으로 수행하는 것 & 슬레이 상황은 아래와 같습니다. 당신이 또는 들여 쓰기를 소개하고자하지 않는 수없는 경우,

if 0: # disabled because *some convincing reason* 
    def x(): 
    """This code will 
     add 1 and 1 """ 
    a=1+1 

또는 : 정말 코멘트하지 않고, (당신이 블록을해야하기 때문에)이 모든 경우에 적용되지 않습니다,하지만 어쩌면 그것은 도움이됩니다 수준 사이의 수준 :

# disabled because *some convincing reason* 
if 0: # def x(): 
    """This code will 
     add 1 and 1 """ 
    a=1+1 
0

주석을 넣고 각 줄의 시작 부분에 #을 사용해야합니다. 이것은 Eclipse + pydev를 사용하는 경우 매우 쉽습니다.

댓글을 달 코드 블록을 선택하고 Ctrl + \을 누르기 만하면됩니다. 주석을 해제하는 경우에도 마찬가지입니다.

다른 편집기에서도 이와 같은 쉬운 방법이 있다고 확신합니다.

-1

저는 검색 엔진을 만드는 Udacity python 프로그래밍 과정을 진행하고 있습니다. 그들은 삼중 따옴표를 사용하여 웹 페이지의 소스 코드를 변수 'page'에 문자열로 묶어 모든 링크를 검색합니다.

페이지 = ''는 page.find()

관련 문제