Написать декоратор annodoc(), которым можно декорировать классы и функции. Декоратор должен просматривать аннотации объекта и выбирать из них только такие, у которых вместо типа в аннотации используется строка. Эти строки (если они есть) надо добавлять в документацию объекта так:

Аннотированный объект следует просмотреть рекурсивно, и для каждого аннотированного указанным способом атрибута изменить строку документации с помощью annodoc(). Гарантируется, что в тестах эта рекурсия конечна.

   1 @annodoc
   2 class C:
   3     """The class"""
   4     const: "constant" = 1
   5     var: "variable"
   6     undoc = 42
   7 
   8     def method(x: "parameter", y: int) -> "return value":
   9         return param
  10 
  11 print(C.__doc__)
  12 print(C().method.__doc__)

C:
The class
Variable const: constant
Variable var: variable
method:
Variable x: parameter
Returns: return value


CategoryHomework

LecturesCMC/PythonIntro2023/Homework_AnnoDoc (последним исправлял пользователь FrBrGeorge 2023-12-11 12:07:22)