Положить строки документации на специальные методы? - PullRequest
6 голосов
/ 02 апреля 2011

Я пытаюсь решить, какую информацию поместить в строку документации класса, а какую - в строку документации метода __init__.До сих пор я помещал обзор класса и того, как с ним работать, в строку документации класса, тогда как материал, непосредственно связанный с инициализацией (детали аргумента и т. Д.), Я помещал в строку документации __init__.

Сегодня я начал задаваться вопросом, был ли это правильный способ сделать это, поэтому я посмотрел на пару встроенных модулей и вижу, что метод __init__ почти никогда не имеет строки документации.Согласно PEP8, «Строки документации не нужны для закрытых методов» , но не __init__ public?

В том же духе, как насчет других специальных методов, таких как __getitem__, __getattr__ или __new__, должны ли они иметь строки документации?Или я должен просто упомянуть последствия, которые они имеют в классе документации?

1 Ответ

9 голосов
/ 02 апреля 2011

Прямо от PEP 257 :

Публичные методы (включая конструктор __init__) также должны иметь строки документации.

[...]

Конструктор класса должен быть задокументирован в строке документации для его метода __init__.

...