我有一个包含多个部分的脚本,我想知道是否有一种方法可以固定执行这些部分的顺序。例如 : 第1、2和3节==>有时我希望第2节在1之前的3或1之前的3或其他顺序执行。
这些部分是独立的,并且有3个以上的部分,这就是为什么我不能一一执行的原因。
在此先感谢您,如果因为我不是专家而采取的琐碎方法,请接受我的道歉。
答案 0 :(得分:1)
我能想到的两个选择:
选项2的示例为:
originalfile.m
%% section 1
do stuff here
%% section 2
do different stuff here
%% section 3
do even more different stuff here
dothings.m
section2
section1
section3
section1.m
%% section 1
do stuff here
section2.m
%% section 2
do different stuff here
section3.m
%% section 3
do even more different stuff here
答案 1 :(得分:0)
如果您具有MATLAB R2016b或更高版本,则可以将每个代码段转换为一个函数,然后按所需顺序调用这些函数:
section1;
section2;
section3;
function section1()
%% original code for section 1 here
end
function section2()
%% original code for section 2 here
end
function section3()
%% original code for section 3 here
end
现在,您可以根据需要在文件顶部对函数调用进行重新排序,这可能比对脚本中的所有代码重新排序更容易。
但是,如果在各节之间传递数据,则需要将相关变量作为函数的输入和输出参数包括在内,否则可能需要一些工作才能准确确定哪些变量是相关的。
答案 2 :(得分:0)
也许这是滥用测试框架来满足您的用例,但是由于它们是独立的,因此您可以利用script based tests。这将允许您创建一个测试套件,该套件是与每个(测试)部分相对应的数组。然后,您可以将该数组重新排列为您的内容,并在套件上调用运行(或并行运行)