MATLAB代码移植到Python的一些记录

1. reshape

reshape函数是列优先的,如:

y =     1     2     3     4     5     6

reshape(y, 3, 2)=

     1     4

     2     5

     3     6

Python:

y.reshape((3, 2), order='F')  # 按行为order='C'

 

2. size

size(x)

Python:

x.shape

 

3. for循环

for i = 1 : 3 : 10
    xxx;
end

 Python:注意索引标号以0起始

for i in range(1, 11, 3):
    xxx

 

4. 矩阵乘法

a * b

a .* b

Python对于np.array

np.dot(a, b)

a * b

 

5. 幂运算

a .^ b

Python:

a ** b

 

6. 最大值

设a为

当你需要将Python代码转换为MATLAB代码时,可能是因为你熟悉Python但想用MATLAB来实现同样的功能。请注意,PythonMATLAB有着不同的语法和结构,所以并非所有的Python代码都能直接移植。但是,有些概念是通用的,如数据处理、数学运算、循环等。 以下是一些基本的转换策略: 1. **变量声明和赋值**:Python使用`=`进行赋值,而MATLAB使用`.`或`=`。例如: Python: `x = 5` MATLAB: `x = 5;` 2. **列表和数组**:Python中的列表对应于MATLAB的向量(如果长度相同),数组则是矩阵。例如: Python: `my_list = [1, 2, 3]` MATLAB: `my_array = [1 2 3]` 3. **循环**:Python有for和while循环,MATLAB也有类似的`for`和`while`循环。例如: Python: `for i in range(3): print(i)` MATLAB: `for i = 1:3 % 或 for i = 1:3:3 % 如果步长不为1` ` disp(i);` 4. **函数定义**:Python函数前不需要定义,MATLAB则需要`function`关键字。例如: Python: ```python def add(a, b): return a + b ``` MATLAB: ```matlab function result = add(a, b) result = a + b; end ``` 5. **条件语句**:Python有if-else结构,MATLAB也是如此。例如: Python: ```python if x > 0: print("Positive") else: print("Non-positive") ``` MATLAB: ```matlab if x > 0 disp("Positive"); else disp("Non-positive"); end ``` 然而,复杂的逻辑或特定库的功能可能需要调整甚至重新编写。尤其是涉及到科学计算、图形绘制或者深度学习的部分,MATLAB有自己的专有工具箱。如果遇到不能简单翻译的Python库,你可能需要查找MATLAB是否有相应的功能或使用其他第三方接口。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值