megengine.functional.arange

arange(start=0, stop=None, step=1, dtype='float32', device=None)[源代码]

返回半开区间 [start, stop) 内均匀间隔的值组成的1维Tensor。

注解

step 不是整数且浮点舍入误差影响了输出Tensor长度的情况下,本函数无法保证区间中不包含 stop 值。

参数
  • start (Union[int, float, Tensor]) – 如果 stop 被指定了, 该值表示区间的开始(区间包含该值);否则该值表示区间的结束(区间不包含该值)。如果 stop 没有被指定, 默认的区间开始值是 0

  • stop (Union[int, float, Tensor, None]) – 区间的结束。默认值: None

  • step (Union[int, float, Tensor]) – 两个相邻元素的距离( out[i+1] - out[i] )。必须不为0;可能是负值,如果 stop >= start 结果会是空Tensor。默认值:1。

关键字参数
  • dtype (Tensor.dtype) – 输出tensor的数据类型。默认值:float32

  • device (Tensor.device) – 放置被创建tensor的设备。默认值: None

返回类型

Tensor

返回

由均匀间隔的值组成的1维tensor。在 stop - startstep 符号相同时输出 tensor 的长度是 ceil((stop-start)/step),其它情况下是0。

实际案例

>>> F.arange(5)
Tensor([0. 1. 2. 3. 4.], device=xpux:0)
>>> F.arange(1, 4)
Tensor([1. 2. 3.], device=xpux:0)