Matlab 倍频程矢量解包

Matlab 倍频程矢量解包,matlab,octave,unpack,iterable-unpacking,Matlab,Octave,Unpack,Iterable Unpacking,处理多个返回值的倍频程(/matlab)表示法 [a, b] = f(x) 表明f(x)返回的值是一种行向量,并且倍频程支持向量解包(类似于Python的元组解包) 然而当我把 [a, b] = [1, 2] 我明白了 错误:常量表达式的输出参数数无效 倍频程支持向量解包吗 如果是,正确的符号是什么 我在文档中找不到任何东西我没有要测试的倍频程,但在MATLAB中可以“解包”单元阵列 x = {1 2}; [x1,x2] = x{:} x1 = 1 x2 = 2 您可

处理多个返回值的倍频程(/matlab)表示法

[a, b] = f(x)
表明f(x)返回的值是一种行向量,并且倍频程支持向量解包(类似于Python的元组解包)

然而当我把

[a, b] = [1, 2]
我明白了

错误:常量表达式的输出参数数无效

倍频程支持向量解包吗

如果是,正确的符号是什么


我在文档中找不到任何东西

我没有要测试的倍频程,但在MATLAB中可以“解包”单元阵列

x = {1 2};
[x1,x2] = x{:}

x1 =
     1
x2 =
     2
您可以将数值向量转换为单元格数组,格式为
x=num2cell([12])


我必须补充一点,从7.0版开始,这适用于MATLAB。对于早期版本,您必须使用函数。

当赋值的右侧是函数调用时,方括号(
[]
)的含义略有不同。你到底想实现什么?我有两个向量(A和B),我想同时迭代。在python中,我会在zip(a,b)中为a,b做://使用a和b做一些同样在八度音阶中工作的事情。谢谢对于这样一个普通的操作来说,似乎仍然有点罗嗦