如何在 Python 文档测试中包含一个修饰函数?
def decorator(func):
def wrapper() -> None:
func()
return wrapper
def foo() -> None:
"""
Stub.
Examples:
>>> @decorator
>>> def stub(): ...
"""
if __name__ == "__main__":
import doctest
doctest.testmod()
使用 Python 3.12 运行上述代码会抛出一个错误SyntaxError
:
UNEXPECTED EXCEPTION: SyntaxError('invalid syntax', ('<doctest path.to.a[0]>', 1, 0, '@decorator\n', 1, 0))
多行命令应该使用
...
续行。因此,正确的方法是在第二行使用...
而不是:>>>