我有一个结合 Python 和 Cython 编写的应用程序。我最近向这个应用程序添加了一个新功能和测试。测试在我的本地机器(macbook)上通过,但是当我推送到 appveyor(Windows CI 服务)时,测试失败。这本身并不奇怪。当我将打印语句添加到我的 Cython 代码以尝试查看它在 appveyor 上运行时发生了什么时,测试不再失败。这令人沮丧,因为它让我无法弄清楚当 appveyor 上的测试失败时发生了什么。这也令人困惑,因为它违反了我对 Python 和 Cython 的一般工作方式的理解。
我的代码很复杂,我没有合理的方法来分享这种现象的示例。但是,我正在寻找可能发生这种情况的原因。Cython 代码中的打印语句如何以及在什么情况下会对其他计算产生影响?