包装超过80个字符的python doctest结果

时间:2012-11-15 10:30:29

标签: python doctest pep8

我正在尝试将源代码保留在PEP8建议的80字符准则宽度下,但无法弄清楚如何包装结果超过80个字符的doctest。

一个愚蠢的例子:

def long_string():
    """
    Returns a string which is wider than the recommended PEP8 linewidth

    >>> print long_string()
    0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789

    """
    return '0123456789' * 10

我尝试了几种组合,包括使用# doctest: +NORMALIZE_WHITESPACE并尝试使用换行符简单地换行。

2 个答案:

答案 0 :(得分:35)

刚想通了:

def long_string():
    """
    Returns a string which is wider than the recommended PEP8 linewidth

    >>> print long_string()
    01234567890123456789012345678901234567890123456789012345678901234567890\
12345678901234567890123456789

    """
    return '0123456789' * 10

希望能帮助其他人。

答案 1 :(得分:3)

根据 davitenio qris 的建议,我建议您使用#doctest: +ELLIPSIS directive,就像这样。

>>> from test.test_ppp import MockForm
>>> form = MockForm(mock_file='no-errors.xlsx')
>>> form.get_languages(settings_default='English', survey_header=
... form.metadata['raw_data']['survey'][0])  #doctest: +ELLIPSIS
['Ateso', 'English', 'Luganda', ... 'Runyoro-Rutoro']