Julia能否像Matlab一样定义带多输出数组的函数?
Julia中多返回值的定义方式
Julia支持定义返回多个值的函数,但语法和Matlab有所不同:
Matlab是在函数定义时通过[output1, output2]声明输出变量,而Julia不需要在函数头部指定输出,而是在函数体内通过return返回多个值(或直接将多个值作为函数最后一个表达式),调用时通过解构赋值获取多个返回值。
对应你给出的Matlab代码,Julia的实现如下:
function Test(a, b, c) V_cube = a^3 V_rectangle = a * b * c return V_cube, V_rectangle end # 调用示例 output1, output2 = Test(2, 3, 4)
也可以省略return,直接将多值作为函数的最后一行表达式,Julia会默认返回这个元组:
function Test(a, b, c) V_cube = a^3 V_rectangle = a * b * c V_cube, V_rectangle end
Julia的多返回值本质是返回一个元组,调用时用逗号分隔变量即可完成解构,效果和Matlab的输出数组方式一致,但语法更简洁灵活。
内容的提问来源于stack exchange,提问作者EatMyShorts
相关产品推荐
相关产品推荐

