相关疑难解决方法(0)

如何在MATLAB中进行多项赋值?

这是我正在寻找的一个例子:

>> foo = [88, 12];
>> [x, y] = foo;
Run Code Online (Sandbox Code Playgroud)

之后我会期待这样的事情:

>> x

x =

    88

>> y

y =

    12
Run Code Online (Sandbox Code Playgroud)

但相反,我得到的错误如下:

??? Too many output arguments.
Run Code Online (Sandbox Code Playgroud)

我想deal()可能会这样做,但它似乎只适用于细胞.

>> [x, y] = deal(foo{:});
??? Cell contents reference from a non-cell array object.
Run Code Online (Sandbox Code Playgroud)

我该如何解决我的问题?如果我想单独处理它们,我必须经常索引1和2吗?

arrays variables matlab variable-assignment

44
推荐指数
3
解决办法
4万
查看次数

对于普通的MATLAB数组,有没有像deal()这样的东西?

可能重复:
如何在MATLAB中进行多项赋值?

处理单元格数组时,我可以使用该deal()函数将单元格分配给输出变量,例如:

[a, b, c] = deal(myCell{:});
Run Code Online (Sandbox Code Playgroud)

要不就:

[a, b, c] = myCell{:};
Run Code Online (Sandbox Code Playgroud)

我想对一个简单的数组做同样的事情,例如:

myArray = [1, 2, 3];
[a, b, c] = deal(myArray(:));
Run Code Online (Sandbox Code Playgroud)

但这不起作用.有什么选择?

arrays variables matlab variable-assignment

8
推荐指数
1
解决办法
4441
查看次数

Octave基础:如何从向量中分配变量

也许我被Python宠坏了,但Octave是否允许直接从向量中分配变量的值?就是这样做

a,b,c=[5,6,7]
Run Code Online (Sandbox Code Playgroud)

将导致a=5, b=6, c=7.我尝试了很多组合编写上面的表达式,但还没有运气......

octave

6
推荐指数
1
解决办法
1535
查看次数

标签 统计

arrays ×2

matlab ×2

variable-assignment ×2

variables ×2

octave ×1