사람들이 None
을 사용하여 일부 메소드를 호출 할 수있게하려면 메소드 정의시 sentinel object을 사용해야합니다.센티넬 객체에 기본 매개 변수가있는 Sphinx python 메소드로 문서화 하시겠습니까?
_sentinel = object()
def foo(param1=_sentinel):
...
이것은 당신이 foo(param1=None)
를 호출하고 foo()
같은 통화의 차이를 만들 수 있도록 허용합니다.
문제는 스핑크스는 방법을 문서화 않을 때
mymodule.foo(param1=<object object at 0x108c1a520>)
어떻게 스핑크스는 이러한 기능을위한 사용자 친화적 인 출력을 가지고 설득 할 수처럼 작성할 것입니다?
참고로, 센티널 방식을 사용하는 3-4 개의 매개 변수가있는 경우 문서가 어떻게 보이는지 상상해보십시오.
감시 기능 밖에 일회성 목적은 그래서 소린은 당신이 제안하는 것을 정말로 사용할 수 없다고 생각합니다. –