3

想要在 Python 中实现下面列出的 Matlab 命令。我能够找出 Python 中的 Matlab 等效命令,但我没有得到确切的结果。有人可以帮助我实现这一目标。

MATLAB代码:

n0 = 3
n1 = 1
n2 = 5
n = [n1:n2]
>> 1 2 3 4 5
x = [(n - n0) == 0]
>> 0 0 1 0 0

蟒蛇代码:

import numpy 
n0 = 3
n1 = 1
n2 = 5
n = r_[n1:n2+1]
>> [1 2 3 4 5]
x = r_[(n-n0) == 0]
>> [False False True False False]

所以 x 是我的数组,布尔数据类型为“[array([False, False, True, False False], dtype=bool)]”。如何使我的最后一个命令以 0 或 1 的形式返回结果,以使结果与 Matlab 完全相同。

4

1 回答 1

2

使用列表推导将 bool 转换为 int:

[int(val) for val in x]
于 2012-08-10T09:26:04.393 回答