1

我正在用 Python 编写一个模拟数字类型的类。我想要一些大量的文档测试,并且没有来自 pylava 的 pycodestyle 警告。

这是我的困难。

对于以下 doctest

        Traceback (most recent call last):
            ...
        TypeError: Only RiemannSphere, integers or floats can be added to a RiemannSphere

我收到了 pylava 的警告,因为我的线路TypeError: ...太长了。

有人知道如何将它分成两行,即使它在一个 doctest 中?

谢谢,

4

1 回答 1

1

我刚刚找到了一个很好的解决方案,使用 ELLIPSIS:

最初的 doctest 是:

        >>> 1j / z1
        Traceback (most recent call last):
            ...
        TypeError: Only RiemannSphere, integers or floats can be added to a RiemannSphere

使用# doctest: +ELLIPSIS 指令,可以简短地编写:

        >>> 1j / z1
        ... # doctest: +ELLIPSIS
        Traceback (most recent call last):
            ...
        TypeError: Only a RiemannSphere, ... divided by a RiemannSphere number

因此,现在可以很容易地更改 Traceback 中的消息,以便 pylava 不会发出警告。

于 2020-04-03T12:32:25.917 回答