将matlab代码转换为python代码

山姆

如何将Matlab代码转换为python代码?

function b = ismonotone( v, tol )
  if ( nargin < 2 )
    tol = 0;
  end

  b = 0;
  dv = diff(v);
  if ( min(dv) >= -tol ) b = bitor( b, 1 ); end
  if ( max(dv) <= tol ) b = bitor( b, 2 ); end
end

我知道python,但对matlab却不太了解。我想通过此示例了解函数的工作方式或一个函数的返回值等

感觉

我不知道您的函数的预期用途是什么,但这是将其翻译成Python的意思。

def diff(v):
    result = []
    for i in range(1, len(v)):
        result.append(v[i] - v[i-1])
    return result

def ismonotone(v, tol=0):
    b = 0
    dv = diff(v)
    if min(dv) >= -tol:
        b = b | 1
    if max(dv) <= tol:
        b = b | 2
    return b

重点:

  • 在Matlab中,diff是一个内置函数,用于计算数组的相邻元素之间的差。重新实现很简单(尽管这可能不是最高效的方法)。

  • 由于Matlab在处理可变参数函数方面提供了强大的支持,因此您必须烦恼nargin(这等于传递给函数的参数数量)和类似的垃圾,以使事情有时起作用。因此,Matlab代码基本上是说“如果我的参数少于两个,则设置tol=0”。在Python中,我们可以仅使用默认值作为参数(tol=0)。

  • 当您在Matlab中定义函数时,您会这样写:
    function return_value = function_name(arguments)
    无论return_value变量的值(在这种情况下为b)是什么只要控制权离开函数(即,无论何时到达作用域结尾的end语句或return语句),变量的值就是得到归还。returnMatlab中语句不接受与Pythonreturn语句相同的“自变量” 当然,像大多数合理的语言一样,Python使用显式的return语句。

  • bitor(a, b)在matlab中等同于a | b在Python中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将Matlab代码转换为python

来自分类Dev

将代码MATLAB转换为python numpy

来自分类Dev

将代码从MATLAB转换为PYTHON的语法

来自分类Dev

将代码MATLAB转换为python numpy

来自分类Dev

问题将Matlab代码转换为Python不可广播的输出

来自分类Dev

将Matlab代码转换为python以创建矩阵

来自分类Dev

将 Matlab 转换为 Python 代码——DOSNES 算法

来自分类Dev

将 Python 代码转换为 C 代码

来自分类Dev

将fortran代码转换为Matlab

来自分类Dev

将代码从 MATLAB 转换为 R

来自分类Dev

成功将复杂的Matlab代码转换为Python之后,如何运行该代码?

来自分类Dev

成功将复杂的Matlab代码转换为Python之后,如何运行该代码?

来自分类Dev

将python代码转换为c ++

来自分类Dev

将python代码转换为共享对象

来自分类Dev

将curl命令转换为python代码

来自分类Dev

将gstreamer管道转换为python代码

来自分类Dev

将python代码转换为php

来自分类Dev

将Python代码转换为汇编

来自分类Dev

将C#代码转换为python

来自分类Dev

将JavaScript代码片段转换为python

来自分类Dev

将 Python 代码转换为 TensorFlow 程序

来自分类Dev

将 Python 计算转换为 Octave 代码

来自分类Dev

将Haskell代码转换为Python或伪代码

来自分类Dev

将简单的 IDL 参数代码转换为 python 代码

来自分类Dev

将fft代码从Matlab转换为C#

来自分类Dev

将Matlab代码转换为静态C ++库

来自分类Dev

将Matlab / C函数转换为不带源代码的版本

来自分类Dev

如何将Matlab代码转换为jar

来自分类Dev

将循环方程式转换为Octave / Matlab代码