2017-10-25 4 views
0

클래스 생성자를 매개 변수로받는 함수를 문서화하는 올바른 방법은 무엇인지 알아 내려고합니다. Google 스타일 문서 도구를 사용하고 있습니다.올바르게 매개 변수로 전달 된 생성자 문서화

예 :

내가 제대로 이해한다면, 당신은 대체 무엇으로 알고 싶어
class MyClass: 
    def __init__(self): 
     ... 

def my_func(param1, class_constructor): 
"""Example function. 

Args: 
    param1 (int): ... 
    class_constructor (???): My class constructor. 
""" 
    class_instance = class_constructor() 
    ... 

my_func(12, MyClass) 
+1

이 컨텍스트에서 "클래스 생성자"란 무엇입니까? 그것은 단지 수업이 아닌가요? –

+0

그것의 바로 그 클래스 –

+1

실제로 이것은 어떤 호출 가능한 것을 받아 들여야 만합니다 - 코드에있는 어떤 것이 클래스가되어야하지만 그럴 것 같지 않으면 스 니펫에서). –

답변

0

??? 당신의보기에서. 원래 질문에 대한 의견에서 지적한대로 class_constructor 인수는 실제로 클래스 여야하므로 적절한 유형은 type (이전 스타일 클래스는 무시)이됩니다.

+1

동일한 코드가 호출 가능한 모든 함수에서 작동하고 일반 함수를 팩토리 또는 클래스 메서드를 대체 생성자로 사용하는 것이 일반적인 패턴이므로 "호출 가능 객체 반환"으로 문서화합니다. –

+0

그리고 형식이 (호출 가능), 맞습니까? –

+0

'__call__' 메서드를 가진 객체는 모두 호출 가능합니다. 이 메소드의 존재를 검사하는'호출 가능 (callable) '이라는 내장 함수가 있지만, 그런 종류의 전체 유형은 없습니다 (내가 잘못하면 저를 수정하십시오). 호출 할 수있는 객체는 함수, 클래스 인스턴스 및 아마 다른 사람들이 생각할 수있는 것일 수 있습니다. –