Отображение подсказки типа для дескриптора данных @property в справочных документах - PullRequest
0 голосов
/ 16 мая 2018

Для следующего класса:

class Book:

    def __init__(self, title, author):
        self._title = title
        self._author = author

    @property
    def title(self) -> str:
        """Retrieve the book's title"""
        return self._title

    def author(self) -> str:
        """Retrieve the book's author"""
        return self._author

Invoking help(Book) возвращает следующую документацию (сокращенно):

class Book(builtins.object)
 |  Methods defined here:
 |  
 |  author(self) -> str
 |      Retrieve the book's author
 |  
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |  
 |  title
 |      Retrieve the book's title

Обратите внимание, что метод author показывает подсказку типа -> str, позволяя пользователю знать, что имя автора является строкой. С другой стороны, свойство title не показывает такой подсказки.

Помимо простого добавления типа свойства в строку документации для свойства, которая позволяет коду и документации расходиться, это любой способ добавить подсказку типа к свойству, так что help() отобразит тип для собственность?

...