如何在八度音程中进行多变量赋值?
How to do multivariable assignment in octave?
我想做多变量赋值。我可以 [a,b] = min([1 2 3])
但我做不到 [a,b] = [1,2]
。为什么?有什么解决方法吗?
赋值右侧的 [1,2]
被解释为包含两个元素 1
和 2
.
的数组
如果你想在一行中做多变量赋值,你可以在Matlab中使用deal
。根据文档 here.
,这也应该适用于 Octave
>> [a,b] = deal(1,2)
a =
1
b =
2
使用 deal
的优点是它也适用于 Matlab,而 [a b] = {1 2}{:}
的解决方案则不行。
Octave basics: How to assign variables from a vector
>> [a b c] = {5 6 7}{:}
a = 5
b = 6
c = 7
要使 Cobusve 的答案适应 Matlab,需要两行:
>> h={5 6 7}
h =
[5] [6] [7]
>> [a b c]=h{:}
a =
5
b =
6
c =
7
我想做多变量赋值。我可以 [a,b] = min([1 2 3])
但我做不到 [a,b] = [1,2]
。为什么?有什么解决方法吗?
赋值右侧的 [1,2]
被解释为包含两个元素 1
和 2
.
如果你想在一行中做多变量赋值,你可以在Matlab中使用deal
。根据文档 here.
>> [a,b] = deal(1,2)
a =
1
b =
2
使用 deal
的优点是它也适用于 Matlab,而 [a b] = {1 2}{:}
的解决方案则不行。
Octave basics: How to assign variables from a vector
>> [a b c] = {5 6 7}{:}
a = 5
b = 6
c = 7
要使 Cobusve 的答案适应 Matlab,需要两行:
>> h={5 6 7}
h =
[5] [6] [7]
>> [a b c]=h{:}
a =
5
b =
6
c =
7