Python Glossary English

все Python 3astфункция

ast.get_docstring()

вспомогательные функции

Возвращает докстринг модуля, функции или класса из дерева AST — без импорта и запуска кода. Удобно для проверки, что у функций есть описание.

Синтаксис

ast.get_docstring(node, clean=True)

Докстринг — только строка, стоящая первой инструкцией тела; строка после другой инструкции даёт None. Узел должен быть Module, FunctionDef, AsyncFunctionDef или ClassDef — для иного узла будет TypeError. По умолчанию clean=True убирает общий отступ (как inspect.cleandoc), clean=False вернёт текст как есть.

Примеры

import ast
src = 'def area(r):\n    """Площадь круга."""\n    return 3.14 * r * r\n\ndef bare():\n    pass'
tree = ast.parse(src)
for f in tree.body:
    print(f.name, ast.get_docstring(f))  # → area Площадь круга. / bare None
import ast
tree = ast.parse('x = 1\n"""не докстринг"""')
print(ast.get_docstring(tree))  # → None

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности