上一主题

numpy.broadcast_to

下一主题

numpy.expand_dims

numpy.broadcast_arrays

numpy.broadcast_arrays(*args, **kwargs)[source]

相互之间广播任意数量的数组。

参数:

`* args`:array_likes

数组广播。

subok:bool,可选

如果为True,则子类将被传递,否则返回的数组将被强制为基类数组(默认)。

返回:

broadcasted:数组列表

这些数组是原数组的视图。它们通常不连续。此外,广播数组的多于一个元件可以指单个存储器位置。如果你需要写入数组,首先复制。

例子

>>> x = np.array([[1,2,3]])
>>> y = np.array([[1],[2],[3]])
>>> np.broadcast_arrays(x, y)
[array([[1, 2, 3],
       [1, 2, 3],
       [1, 2, 3]]), array([[1, 1, 1],
       [2, 2, 2],
       [3, 3, 3]])]

这是一个有用的习惯用于获取连续副本,而不是不连续的视图。

>>> [np.array(a) for a in np.broadcast_arrays(x, y)]
[array([[1, 2, 3],
       [1, 2, 3],
       [1, 2, 3]]), array([[1, 1, 1],
       [2, 2, 2],
       [3, 3, 3]])]