![]() |
1
18
如果需要Unicode字符串,则必须使用Unicode DocStrings!介意
只要测试通过,这就可以工作。对于python 2.x,您还需要另一个黑客来使详细的doctest模式工作,或者在测试失败时获得正确的跟踪:
注意!仅在调试时使用setDefaultEncoding。我接受它用于doctest,但在您的生产代码中没有任何地方。 |
![]() |
2
6
python 2.6.6不太了解unicode输出,但可以使用以下方法修复:
在我的例子中,这个docstring告诉我们测试被破坏了:
带“错误”信息
使用
|
![]() |
3
2
|
![]() |
4
1
我的解决方案是转义unicode字符,比如u'\xe1\xe9\xed\xf3\xfa'。虽然不容易阅读,但我的测试只有几个非ASCII字符,因此在这些情况下,我把描述放在一边作为注释,就像“n with tilde”。 |
![]() |
5
1
如前所述,您需要确保docstrings是unicode。 如果您可以切换到python 3,那么它将在那里自动工作,如 二者都 源编码已经是UTF-8,默认字符串类型是Unicode。
要在python 2中实现相同的目标,需要
|