Doctest:如何识别预期输出和实际输出之间的差异?

问题描述 投票:0回答:1

在下面的文档测试中,预期输出和实际输出看起来相同。我很确定存在一些空白错误,因为当我启用

NORMALIZE_WHITESPACE
时,测试成功。是否有另一个标志可以帮助用户对此类空白错误的位置进行三角测量?

"""
>>> df  # doctest:-NORMALIZE_WHITESPACE
              Open
Date
2021-05-17  126.82
"""

import pandas as pd

df = pd.DataFrame({'Date': ['2021-05-17'], 'Open': [126.82]}).set_index('Date')

if __name__ == "__main__":
    import doctest
    doctest.testmod()
Failed example:
    df  # doctest:-NORMALIZE_WHITESPACE
Expected:
                  Open
    Date
    2021-05-17  126.82
Got:
                  Open
    Date
    2021-05-17  126.82
python pandas doctest
1个回答
4
投票

尝试使用标志

REPORT_NDIFF
。文档说,“这是标记行内和行间差异的唯一方法”,这将有助于识别任何空白问题,例如:

"""
>>> print('Hello goodbye')
Hello goodbye\r
"""
Failed example:
    print('Hello goodbye')
Differences (ndiff with -expected +actual):
    - Hello goodbye
    ?              -
    + Hello goodbye

请注意,回车符实际上并未出现在此处。

© www.soinside.com 2019 - 2024. All rights reserved.