44

我试图将我的源代码保持在 PEP8 推荐的 80 个字符的指导宽度之下,但无法弄清楚如何包装我的 doctest,它的结果超过 80 个字符。

一个点头的例子:

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

    >>> print long_string()
    0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789

    """
    return '0123456789' * 10

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

4

2 回答 2

45

刚想通:

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

    >>> print long_string()
    01234567890123456789012345678901234567890123456789012345678901234567890\
12345678901234567890123456789

    """
    return '0123456789' * 10

希望能帮助别人。

于 2012-11-15T10:30:28.517 回答
10

正如davitenioqris所建议的那样,我建议使用#doctest: +ELLIPSIS指令,就像这样。

>>> 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']
于 2017-06-28T19:39:14.330 回答