我正在处理一些必须操作 unicode 字符串的代码。我正在尝试为它编写文档测试,但遇到了麻烦。以下是说明问题的最小示例:
# -*- coding: utf-8 -*-
def mylen(word):
"""
>>> mylen(u"áéíóú")
5
"""
return len(word)
print mylen(u"áéíóú")
首先我们运行代码来查看预期的输出print mylen(u"áéíóú")
。
$ python mylen.py
5
接下来,我们在其上运行 doctest 以查看问题。
$ python -m
5
**********************************************************************
File "mylen.py", line 4, in mylen.mylen
Failed example:
mylen(u"áéíóú")
Expected:
5
Got:
10
**********************************************************************
1 items had failures:
1 of 1 in mylen.mylen
***Test Failed*** 1 failures.
那么我如何测试mylen(u"áéíóú")
评估为 5 呢?