#python #docstring
Вопрос:
Используя функции pickle.dump()
и pickle.load()
в качестве примеров.
Как указать/document/docstring тип аргумента, в котором pickle.dump()
принимается, или тип значения, в котором pickle.load()
возвращается?
Вот пример оформления документов на Python в стиле Google. Как вы можете видеть, тип аргумента и тип возвращаемого значения обычной функции статичны и явно задокументированы:
def function_with_types_in_docstring(param1, param2):
"""Example function with types documented in the docstring.
`PEP 484`_ type annotations are supported. If attribute, parameter, and
return types are annotated according to `PEP 484`_, they do not need to be
included in the docstring:
Args:
param1 (int): The first parameter.
param2 (str): The second parameter.
Returns:
bool: The return value. True for success, False otherwise.
.. _PEP 484:
https://www.python.org/dev/peps/pep-0484/
"""
Но иногда тип аргумента/возвращаемого значения является динамическим. Даже не pickle.py предоставляет и пример документирования типа объекта аргумента/возврата его функций.
Ответ №1:
Только в некоторых примерах показан тип возвращаемого значения, статически определенный в строке документа. Приведенный ниже пример из ссылки, размещенной в вопросе, является примером, в котором тип возвращаемого значения указывается в подписи функции с помощью подсказки типа.
Существует несколько способов указать несколько типов (например Union[int, str, float]
), поэтому выберите, какой метод подходит для вашего сценария.
def function_with_pep484_type_annotations(param1: int, param2: str) -> bool:
"""Example function with PEP 484 type annotations.
Args:
param1: The first parameter.
param2: The second parameter.
Returns:
The return value. True for success, False otherwise.
"""