我有一个非常奇怪的Python错误,甚至可能是解释器中的错误。
我最低限度复制代码看起来有点像以下内容:
from sys import stdout print "Starting" stdout.flush() from camera import py_SaperaCamera print "Imported" stdout.flush() cam = py_SaperaCamera.Camera() print "Constructed" stdout.flush() del cam print "Destructed" stdout.flush()
我可以想到,这个计划的执行可能不会那么顺利。 事实上,我可以algorthimacally生成这么多! 以下提供了一些用于娱乐的内容,但请随时跳到下面的话题:
如果以某种方式停止执行,我可能会很喜欢它,也许是一个段错误,一个来自boost的爱的信息:无论是要求我联系应用程序支持团队,即使它停止了,也不打印任何东西。 这将是恒星。
不,我得到以下输出:
Starting Imported Constructed Starting Imported Constructed Starting Imported Constructed Starting Imported Constructed Starting Imported Constructed Starting Imported Constructed
细心的读者会注意到,该程序似乎已经运行了6次,这是一个明确的标志。 所以我的问题是简单的说,我以前做了什么值得这样的事情呢?
为什么不注释掉cam = py_SaperaCamera.Camera()
? 然后你就会知道它是不是你的Camera类的实例化了。 这可能会缩小您的搜索范围。