mindspore.ops.index_fill ======================== .. py:function:: mindspore.ops.index_fill(x, axis, index, value) 按 `index` 中给定的顺序选择索引,将输入 `value` 值填充到输入Tensor `x` 的所有 `axis` 维元素。 参数: - **x** (Tensor) - 输入Tensor,支持的数据类型是数值型和布尔型。 - **axis** (Union[int, Tensor]) - 填充输入Tensor的维度,要求是一个int或者数据类型为int32或int64的零维Tensor。 - **index** (Tensor) - 填充输入Tensor的索引,数据类型为int32。 - **value** (Union[bool, int, float, Tensor]) - 填充输入Tensor的值。如果 `value` 是Tensor,那么 `value` 要求是数据类型与 `x` 相同的零维Tensor。否则,该值会自动转化为一个数据类型与 `x` 相同的零维Tensor。 返回: 填充后的Tensor。shape和数据类型与输入 `x` 相同。 异常: - **TypeError** - `x` 的类型不是Tensor。 - **TypeError** - `axis` 的类型不是int或者Tensor。 - **TypeError** - 当 `axis` 是Tensor时, `axis` 的数据类型不是int32或者int64。 - **TypeError** - `index` 的类型不是Tensor。 - **TypeError** - `index` 的数据类型不是int32。 - **TypeError** - `value` 的类型不是bool、int、float或者Tensor。 - **TypeError** - 当 `value` 是Tensor时, `value` 的数据类型和 `x` 的数据类型不相同。 - **ValueError** - 当 `axis` 是Tensor时, `axis` 的维度不等于0。 - **ValueError** - `index` 的维度大于1。 - **ValueError** - 当 `value` 是Tensor时, `value` 的维度不等于0。 - **RuntimeError** - `axis` 值超出范围[-x.ndim, x.ndim - 1]。 - **RuntimeError** - `index` 存在值超出范围[-x.shape[axis], x.shape[axis]-1]。