gpt4 book ai didi

python - 将python doctest放在代码文件的末尾?

转载 作者:太空宇宙 更新时间:2023-11-04 01:35:56 27 4
gpt4 key购买 nike

我可以将 python doctests 放在每个函数的主体中,有时我喜欢小型库,因为它们与函数位于同一文件中。

或者我可以将它们全部放在一个单独的文件中并执行单独的文件,这很好,以防我不希望在函数之间进行 doctest。有时我发现如果文档字符串很小,代码会更容易处理。

是否还有一种方法可以将 python doctests 保存在同一个文件中,但将它们放在文件末尾?


编辑:基于以下已接受答案的解决方案:

def hello_world():
return u'Hello World'


def hello(name):
return u'Hello %s' % name


def doctest_container():
"""
>>> hello_world()
u'Hello World'

>>> hello(u'Guido')
u'Hello Guido'
"""
pass


if __name__ == "__main__":
import doctest
doctest.testmod()

其实很简单,创建一个虚拟函数作为最后一个函数,它包含一个文档字符串中的所有文档测试。

最佳答案

您可以像这样将 doctests 附加到文件末尾的文档字符串中:

def myfunc():
"""This is a docstring without a doctest
"""
pass

# ... some other code here

# Add docstrings for doctest:
myfunc.__doc__ += """
>>> myfunc()
>>> repr(myfunc())
None
"""

关于python - 将python doctest放在代码文件的末尾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9769820/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com