Matlab 等效于 Python 用于调试目的的退出函数
Matlab equivalent of Python exit function for debugging purposes
我想知道当您想让程序在某个点终止以进行简单检查(例如查看数组的形状等)时,Matlab 中的常见做法是什么。
在Python中,我通常在我希望我的程序终止的地方插入exit()
。
我查看了 Matlab 的文档,here 它说有一个 exit
语句,但这会导致关闭 Matlab GUI,因此我无法检查输出到Matlab 终端。
我知道我可以在 运行 时手动终止程序,但这让我无法控制确切的终止时间。
您正在寻找dbstop
:https://mathworks.com/help/matlab/ref/dbstop.html
"The dbstop
function is used to temporarily stop the execution of a program and give the user an opportunity to examine the local workspace." 对于您描述的用途,最可能的形式是 dbstop in FILESPEC at LINENO
,例如dbstop in myfunction at 34
.
只要您是 运行 MATLAB IDE 中的 MATLAB 代码,并且它不是实时脚本,那么最简单的方法就是手动设置 breakpoint 在感兴趣的行上,单击行号右侧的:
当执行到带有断点的行时,它将暂停,您可以浏览工作区的内容,在命令 window 中键入命令,或使用 Continue、Step 或 Quit Debugging 工具栏中的按钮。
这与 dbstop
及其相关命令所做的基本相同,但在 IDE 中开发时更方便(恕我直言)。我想不出有什么理由更喜欢命令行版本,除非您出于某种原因被限制为纯文本输入。
使用断点是任何语言调试的一个非常基本的部分,Python 包括在内。如果您当前用于 Python 的 IDE 不支持它们,那么我强烈建议您考虑更换为支持的
我想知道当您想让程序在某个点终止以进行简单检查(例如查看数组的形状等)时,Matlab 中的常见做法是什么。
在Python中,我通常在我希望我的程序终止的地方插入exit()
。
我查看了 Matlab 的文档,here 它说有一个 exit
语句,但这会导致关闭 Matlab GUI,因此我无法检查输出到Matlab 终端。
我知道我可以在 运行 时手动终止程序,但这让我无法控制确切的终止时间。
您正在寻找dbstop
:https://mathworks.com/help/matlab/ref/dbstop.html
"The dbstop
function is used to temporarily stop the execution of a program and give the user an opportunity to examine the local workspace." 对于您描述的用途,最可能的形式是 dbstop in FILESPEC at LINENO
,例如dbstop in myfunction at 34
.
只要您是 运行 MATLAB IDE 中的 MATLAB 代码,并且它不是实时脚本,那么最简单的方法就是手动设置 breakpoint 在感兴趣的行上,单击行号右侧的:
当执行到带有断点的行时,它将暂停,您可以浏览工作区的内容,在命令 window 中键入命令,或使用 Continue、Step 或 Quit Debugging 工具栏中的按钮。
这与 dbstop
及其相关命令所做的基本相同,但在 IDE 中开发时更方便(恕我直言)。我想不出有什么理由更喜欢命令行版本,除非您出于某种原因被限制为纯文本输入。
使用断点是任何语言调试的一个非常基本的部分,Python 包括在内。如果您当前用于 Python 的 IDE 不支持它们,那么我强烈建议您考虑更换为支持的