有一个函数 fix(),作为将字符串写入文本文件的输出函数的辅助函数。
def fix(line):
"""
returns the corrected line, with all apostrophes prefixed by an escape character
>>> fix('DOUG\'S')
'DOUG\\\'S'
"""
if '\'' in line:
return line.replace('\'', '\\\'')
return line
打开文档测试,我收到以下错误:
Failed example:
fix('DOUG'S')
Exception raised:
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/doctest.py", line 1254, in __run
compileflags, 1) in test.globs
File "<doctest convert.fix[0]>", line 1
fix('DOUG'S')
^
无论我使用什么 \ 和 's 组合,doctest 似乎都不想工作,即使函数本身运行良好。怀疑这是 doctest 在块注释中的结果,但有解决此问题的任何提示。