Я видел следующее утверждение в ряде строк документации при help()
использовании класса: «См. help(type(self))
для точной подписи.»
Примечательно, что это help()
для scipy.stats.binom.__init__
и stockfish.Stockfish.__init__
как минимум. Поэтому я предполагаю, что это какое-то сообщение со склада.
В любом случае, я не могу понять, какого черта это значит. Это полезная информация? Обратите внимание, что, будучи, так сказать, «вне» класса, я никогда не имею доступа к self
Кроме того, невозможно создать экземпляр класса, если я не могу получить доступ к сигнатуре __init__
метода и, следовательно, даже не могу help(type(my_object_instantiated))
. Это ловушка 22. Чтобы использовать __init__
, мне нужна подпись для __init__
, но чтобы прочитать подпись для __init__
, мне нужно создать экземпляр объекта с помощью __init__
. Однако этот пункт является строго академическим, поскольку даже когда мне удается создать экземпляр scipy.stats.binom
, он на самом деле возвращает объект совершенно другого класса rv_frozen
с точно таким же сообщением в его __init__
docstring, но чья подпись совершенно другая и совершенно менее полезная. Другими словами, help(type(self))
на самом деле не дает точной подписи. Это бесполезно.
Кто-нибудь знает, откуда пришло это сообщение или что я должен из него сделать? Это просто мусор из генератора документации или я ошибаюсь?