Что такое соглашение с строкой документации Python для возврата нескольких значений? - PullRequest
0 голосов
/ 24 ноября 2018

Скажем, у меня есть функция, которая возвращает более одного значения

import numpy as np
def add_and_raisepower(x, y):
    """
    1) Add inputs **x** and **y** and return the result.

    2) Raise **x** to the power of **y**, multiply this
    result by an array of one's and return the result.

    :type x: float
    :param x: The first input number

    :type y: float
    :param y: The second input number

    :rtype val1: float
    :rtype val2: numpy.array(float)
    """

    val1 = x + y
    val2 = np.ones(100)*(x**y)

    return val1, val2

Меня беспокоит комментарий :rtype: в строке документации;если функция возвращает несколько значений, как в этом примере, как записать :rtype: в строку документации (согласно PEP-8)?

Обычно для функций, которые возвращают только одно значение, :rtype:будет написано что-то вроде

"""
...

:rtype: int
"""

, где возвращаемое имя переменной не указано, поскольку это не имеет значения, потому что есть только одно возвращаемое значение.

Я понимаю, что в идеале я долженпопытайтесь разбить мои функции на более простые функции, что, конечно, возможно для add_and_raisepower выше, однако я использую это только как игрушечный пример для иллюстрации вопроса.

1 Ответ

0 голосов
/ 24 ноября 2018

В этом случае каждый раз получается кортеж.Запишите это так:

:rtype: (float, numpy.array(float))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...