How to express multiple types for a single parameter or a return value in docstrings that are processed by Sphinx?(如何在Sphinx处理的文档字符串中表示单个参数或返回值的多个类型?)
问题描述
有时,Python中的函数可能会接受灵活类型的参数。或者,它可以返回灵活类型的值。现在我记不起这样一个函数的好例子了,所以我在下面用一个玩具例子演示这样的函数可能是什么样子。我想知道如何使用Sphinx文档表示法为这些函数编写文档字符串。在下面的示例中,参数可以是str
或int
。同样,它可能返回str
或int
。
我给出了一个文档字符串示例(既使用默认的Sphinx表示法,也使用Sphinx的拿破仑扩展理解的Google表示法)。我不知道这是否是记录灵活类型的正确方式。
Sphinx默认表示法:
斯芬克斯·拿破仑谷歌符号:
表示要由Sphinx处理的文档字符串中的参数或返回值的多个类型的正确方式是什么?
推荐答案
<2-4]>类型提示
https://docs.python.org/3/library/typing.html#typing.Union
对于Python2,我建议使用与该Python3模块完全相同的语法,即:
- 使移植更容易,并可能在以后实现自动化
- 指定唯一的、定义良好的规范方法
示例:
然后当你有3.5的时候,你只需写:
我认为它已经支持文档生成,但我还没有测试它:https://github.com/sphinx-doc/sphinx/issues/1968
这篇关于如何在Sphinx处理的文档字符串中表示单个参数或返回值的多个类型?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!