Matlab 运算符 .* 转 python

use*_*971 1 python arrays matlab numpy

我找到了这个.*matlab操作。python中类似的操作是什么?

例如我如何将此 matlab 代码转换为 python。

data.*data_1
Run Code Online (Sandbox Code Playgroud)

NPE*_*NPE 6

在 MATLAB 中,.*逐元素乘积

octave:1> data = [1 2 3];
octave:2> data_1 = [4 5 6];
octave:3> data .* data_1
ans =
    4   10   18
Run Code Online (Sandbox Code Playgroud)

如果你使用 Numpy,你可以简单地写data * data_1

>>> import numpy as np
>>> data = [1, 2, 3]
>>> data_1 = [4, 5, 6]
>>> np.array(data) * np.array(data_1)
array([ 4, 10, 18])
Run Code Online (Sandbox Code Playgroud)

如果没有 Numpy,您可以使用列表理解:

>>> [i * j for i, j in zip(data, data_1)]
[4, 10, 18]
Run Code Online (Sandbox Code Playgroud)