все Python 3inspectфункция
inspect.getdoc()
исходный код
Docstring объекта с выровненными отступами; если своего нет — берёт из родительского класса. Возвращает None, когда документации нет вовсе.
Синтаксис
inspect.getdoc(object)
Отличие от __doc__ двойное. Во-первых, текст проходит через cleandoc: уходит отступ, с которым docstring записан внутри функции. Во-вторых, переопределённый метод без своего docstring получает родительский (с 3.5), а класс без docstring — docstring предка: obj.__doc__ в этих случаях даёт None. Так работает help(); если нужна именно своя строка, читайте __doc__.
Примеры
import inspect
class Base:
def run(self):
"""Запустить задачу."""
class Child(Base):
def run(self):
pass
print(Child.run.__doc__) # → None
print(inspect.getdoc(Child.run)) # → Запустить задачу.
import inspect
def f():
"""Заголовок.
Подробности.
"""
print(repr(inspect.getdoc(f))) # → 'Заголовок.\n\nПодробности.'
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности