首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >返回变量Matlab和Python?

返回变量Matlab和Python?
EN

Stack Overflow用户
提问于 2018-07-19 03:29:01
回答 1查看 220关注 0票数 0

我正在尝试将一些代码从Matlab翻译成Python。我的函数(在Matlab中)的开始如下所示:

代码语言:javascript
运行
复制
function [varargout]=hysime(varargin);
    error(nargchk(3, 4, nargin))
    if nargout > 2, error('too many output parameters'); end
    verbose = 1; % default value
    y = varargin{1}; % 1st parameter is the data set

在程序的后面会有类似这样的东西:

代码语言:javascript
运行
复制
n = varargin{2}; % the 2nd parameter is the noise
Rn = varargin{3}; % the 3rd parameter is the noise correlation matrix

if nargin == 4, verbose = ~strcmp(lower(varargin{4}),'off');end

最后是这样的:

代码语言:javascript
运行
复制
varargout(1) = {kf};
if nargout == 2, varargout(2) = {Ek};end
return 

我对这段代码的含义感到非常困惑。一方面,我知道所有输入的参数都需要返回。然而,在程序结束时,似乎只返回2个变量(而我们输入3?)。我如何翻译这段代码,以便返回必要的参数?我想我在这里最大的问题是matlab代码让代理输入参数,但是它们看起来不都是必需的?看起来不能有两个以上的输出?我只是很难理解这里的每一行代码的含义。有没有人能解释一下matlab代码是怎么回事,以及我能做些什么来在python中实现同样的功能?

谢谢!

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51409685

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档