我希望能够一次执行一行Python函数,这样我就可以任意交错执行两个(或更多)函数。
想到的第一种方法是在函数的每一行之间手动插入yield
语句,并在调用函数后在返回的迭代器上使用next()
每当我要执行函数的下一行时。
这本身就行得通,但是这很丑陋,因为所有的地狱和做所有的手工工作都感觉很不对劲。有没有更简单和/或更自动化的方式来实现我想要的?
我看到了this有点类似的问题,但是尽管问问者试图说服人们他不需要调试器,但所有答案都可以用“使用调试器”来概括(也许是因为他没有解释为什么调试器不是他所需要的)。无论如何,上述问题(当然还有答案)都不适用,因为我需要能够同时逐步完成许多功能,据我所知,调试器(或使用的sys.settrace()
就此而言,在Python下实现调试器)只能用于单步执行代码,而不能在执行多个代码之间自由切换。