如何将此代码从MATLAB转换为Python?
MATLAB:
function out = f(x)
x1 = x(1);
x2 = x(2);
out = [x1+2*x2-2;x1^2+4*x2^2-4];
Python?
fx = np.array([[x1+2*x2-2], [x1^2+4*x2^2-4]])
x1
和x2
在一个列表中?位置呢?
x =[]
x1 = x[0]
x2 = x[1]
我不知道这是否是在Python中定义数学函数的正确方法。我也不知道x1
和x2
在MATLAB中转换为Python时指的是什么。
在Python中,函数定义以def关键字开头,后跟括号中的函数名和参数。此外,与Matlab不同,Python使用基于0的索引和方括号对数组进行切片。所以应该是:
import numpy as np
def f(x):
x1 = x[0]
x2 = x[1]
return np.array([[x1+2*x2-2], [x1**2+4*x2**2-4]])