>>> a = np.where(np.ones(5))[0]
>>> a
array([0, 1, 2, 3, 4])
>>> a.flags['WRITEABLE']
True
>>> b = np.where(np.ones((5,2)))[0]
>>> b
array([0, 0, 1, 1, 2, 2, 3, 3, 4, 4])
>>> b.flags['WRITEABLE']
False
Run Code Online (Sandbox Code Playgroud)
内部numpy计算得到一维数组,但随后返回一个元组,这个元组是在这个数组上具有相同步幅的视图,每个维度一个 ;
例如,如果数组是这样的:
>>> a
array([[0, 1, 0],
[3, 0, 5]])
Run Code Online (Sandbox Code Playgroud)
内部numpy首先计算
>>> i
array([0, 1, 1, 0, 1, 2])
Run Code Online (Sandbox Code Playgroud)
其中i[2 * k]和i[2 * k + 1]是k'非零值的指数; 但是,返回的结果是:
>>> (i[::2], i[1::2])
(array([0, 1, 1]), array([1, 0, 2]))
Run Code Online (Sandbox Code Playgroud)
何时,它创建它作为参数传递0flags的视图.因此,可写标志未设置.
当输入数组是一维时,它需要一个快捷方式,因此标志设置不同.
| 归档时间: |
|
| 查看次数: |
137 次 |
| 最近记录: |