numpy.broadcast_arrays#
- numpy.broadcast_arrays(*args, subok=False)[源代码]#
将任意数量的数组相互广播.
- 参数:
- *argsarray_likes
要广播的数组.
- subokbool, 可选
如果为真,则子类将被传递,否则返回的数组将被强制为基类数组(默认).
- 返回:
- broadcasted数组的元组
这些数组是原始数组的视图.它们通常不是连续的.此外,广播数组中的多个元素可能引用同一个内存位置.如果需要写入数组,请先复制.虽然可以将
writable
标志设置为 True,但写入单个输出值可能会最终更改输出数组中的多个位置.自 1.17 版本弃用: 当前输出被标记为,如果写入,将发出弃用警告.未来的版本将设置
writable
标志为 False,因此写入它将引发错误.
示例
>>> import numpy as np >>> x = np.array([[1,2,3]]) >>> y = np.array([[4],[5]]) >>> np.broadcast_arrays(x, y) (array([[1, 2, 3], [1, 2, 3]]), array([[4, 4, 4], [5, 5, 5]]))
这是一个有用的惯用法,用于获取连续的副本而不是非连续的视图.
>>> [np.array(a) for a in np.broadcast_arrays(x, y)] [array([[1, 2, 3], [1, 2, 3]]), array([[4, 4, 4], [5, 5, 5]])]