Python Glossary English

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

inspect.getcomments()

исходный код

Возвращает строки комментариев # прямо над определением функции, класса или метода (у модуля — в начале файла). Нужен исходный файл.

Синтаксис

inspect.getcomments(object)

Функция читает исходный файл, а не объект: для встроенных функций и для кода, созданного через exec(), в интерактивной оболочке или в python -c, она молча вернёт None, а не бросит ошибку. Пустая строка между комментарием и def разрывает связь. Docstring сюда не входит — его даёт getdoc().

Примеры

import inspect
class Cart:
    # Итог с учётом скидки.
    # Скидка — в процентах.
    def total(self, discount):
        pass
print(repr(inspect.getcomments(Cart.total)))
# → '# Итог с учётом скидки.\n# Скидка — в процентах.\n'
import inspect
namespace = {}
exec('# комментарий\ndef dyn(): pass', namespace)
print(inspect.getcomments(namespace['dyn']))  # → None — исходного файла нет
print(inspect.getcomments(len))  # → None

См. также

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