在Matlab/Octave中有一个名为keyboard
的函数,它可以停止执行并将控制权交给键盘。
当我运行长脚本并需要测试一些内容时,拥有这样的功能会很有用。由于Python是解释性语言,我猜应该也可以实现这个功能。
Python中是否有类似的功能,或者我应该使用更“Pythonic”的东西? :)
在Matlab/Octave中有一个名为keyboard
的函数,它可以停止执行并将控制权交给键盘。
当我运行长脚本并需要测试一些内容时,拥有这样的功能会很有用。由于Python是解释性语言,我猜应该也可以实现这个功能。
Python中是否有类似的功能,或者我应该使用更“Pythonic”的东西? :)
自Python 3.7以来,您可以使用内置的breakpoint()
函数,如PEP 553所述。在早期版本的Python中,您将使用import pdb; pdb.set_trace()
,就像接受的答案所述。
import ipdb; ipdb.set_trace()
在掌控代码后,您可以使用 这些命令 移动代码。
import code
code.interact(local=locals())
返回IDE命令提示符,就像MATLAB中的keyboard
一样,而pdb似乎更专注于在代码中逐步执行断点(尽管我没有多少使用pdb,所以没有深入研究过其功能)
来自:http://ubuntugeeknerd.blogspot.com/2013/12/matlab-keyboard-equivalent-in-python.html
更多文档资料:https://www.digitalocean.com/community/tutorials/how-to-debug-python-with-an-interactive-console