파이참에서 폴드한 함수의 코멘트를 함수가 정의된 그 라인에 남기는 법


Ctrl+Alt+T 를 누르면 파이참에서 특정 구간을 폴딩 설정을 할 수 있습니다. 다음과 같은 모양새가 됩니다.

# pragma region 여기는 폴딩구간
블라블라
# end region

이것은 아래와 같이 접혀집니다

[회색]여기는 폴딩구간 ...

접히는 라인에 바로 코멘트를 달 수 있어서 꽤 맘에 듭니다.

이런 폴딩구간 설정을 하지 않아도 대부분의 함수들은 그 함수의 정의부에서 종결부까지 접히는 기능을 자동으로 지원합니다.

def fold_it():
    # 이 함수는 접는 것을 보여주는 함수입니다.
    블라블라
    블라블라

는 아래와 같이 접힙니다.

def fold_it():...

저는 대부분의 함수들의 주석문을 잘 남겨 놓지만, 이렇게 접어 놓으면 이 함수가 무엇을 하는지 알아보기 힘들어서, 아래처럼 되었으면 좋겠습니다.

def fold_it():...  # 이 함수는 접는 것을 보여주는 함수입니다.

안에 남겨 놓는 주석문이 아니라 따로 주석문을 작성해도 좋으니,

파이참에서 함수를 접을 경우 그 함수에 대한 코멘트를 함수의 정의문과 같은 라인에 남겨놓는 방법이 있습니까?

  • 2018년 01월 05일에 작성됨

조회수 215


Hashcode banner summercoding

1 답변


폴딩은 파이참에서 지원하는거고, pragma가 python의 기본사항이 아닙니다.

함수들의 주석은 docstring 형태로 작성하도록 PEP에서 규정하고 있습니다. docstring은 다음과 같이 작성합니다

ef discount_rewards(rewards, gamma=FLAGS.gamma):
    """Returns discounted rewards by a rate, `gamma`

    When a reward is nonzero,
    the game has been reset ("Pong" specific)

    Parameters
    ----------
    rewards : 1-D Array
        Rewards np.ndarray of shape (n_samples,)
    gamma : float, optional
        Discount rate. Usually it should be handled
        by `FLAGS.gamma` (default: 0.99)

    Returns
    -------
    dicounted_r : 1-D Array
        Discounted rewards of shape (n_samples,)

    Example
    -------
    >>> r = np.array([1, 1, 1])
    >>> discount_rewards(r, 0.99)
    np.array([1 + 0.99 + 0.99**2, 1 + 0.99, 1])
    """
    discounted_r = np.zeros_like(rewards)
    return discounted_r

위와 같은 형태로 docstring을 작성하시면, IDE등에서 해당 함수를 사용 시 docstring이 화면에 노출되게 됩니다.

제가 파이참을 사용하지 않아서 폴딩이 어떻게 될지는 테스트 할 순 없었네요.


  • 저도 이렇게 매 함수, 클래스마다 주석을 남겨 두기는 하는데, 이건 그냥 접히더라고요    광자   2018.1.10 09:46     

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close