Google python style guide
sagt:
Fein. Verwenden Sie "Yields:" statt "Returns:" in der Doc-Zeichenfolge für Generatorfunktionen.
Beispiel aus here genommen:
def example_generator(n):
"""Generators have a ``Yields`` section instead of a ``Returns`` section.
Args:
n (int): The upper limit of the range to generate, from 0 to `n` - 1
Yields:
int: The next number in the range of 0 to `n` - 1
Examples:
Examples should be written in doctest format, and should illustrate how
to use the function.
>>> print [i for i in example_generator(4)]
[0, 1, 2, 3]
"""
for i in range(n):
yield i
Beachten Sie, dass diese Codierung Styleguide keine offizielle Python ist.
Wenn Sie Yields
Sie sphinxcontrib-napoleon
Erweiterung zu nutzen, müssen verwenden werden, indem es auf die Liste der extensions
in conf.py
fügte hinzu:
extensions = ['...', ..., 'sphinxcontrib.napoleon']
sphinxcontrib-napoleon
erkennen Yields
Stichwort among others auf der docstring Vorverarbeitungsschritt:
Napoleon ist eine Sphinx-Erweiterung, mit der Sphinx sowohl NumPy als auch Google-Style-Dokument analysieren kann Saiten - der von der Khan Academy empfohlene Stil.
Napoleon ist ein Pre-Prozessor, der NumPy und im Google-Stil Docstrings und wandelt sie parst reStructuredText vor Sphinx sie zu analysieren versucht. Dies geschieht in einem Zwischenschritt, während Sphinx die Dokumentation verarbeitet, also ändert es nichts von die Docstrings in Ihren tatsächlichen Quellcodedateien.
Ich persönlich denke, Returns:
mit ziemlich ok ist, da ein generator
im Grunde ein Spezialfall eines function
ist.
Nähe [Docstring Tag für 'Ertrag' Schlüsselwort] (http://stackoverflow.com/questions/7652540/docstring-tag-for-yield-keyword ? rq = 1). – alecxe
Ich weiß nicht, ReST, aber meine Vermutung wäre, dass Sie es dokumentieren, wie Sie eine andere "Iterator" -Funktion zurückgeben würde. Die Verwendung von "yield" ist ein Implementierungsdetail. – user2357112
Ja, ich weiß, die andere Frage ist ähnlich, ich möchte eine ReST-spezifische Antwort, danke! – gatoatigrado