range()
生成包含一系列等间距值的动态数组。
语法
range(
start,
stop [,
step])
详细了解语法约定。
参数
客户 | 类型 | 必需 | 说明 |
---|---|---|---|
start | 标量 (scalar) | ✔️ | 生成数组中第一个元素的值。 |
stop | 标量 (scalar) | ✔️ | 结果数组中最后一个元素的最大值,使得序列中的最后一个值小于或等于停止值。 |
step | 标量 (scalar) | 数组中两个连续元素之间的差异。 step 的默认值为 1 (对于数字)和 1h (对于 timespan 或 datetime )。 |
返回
动态数组,其值为:start、start + step...直至并包括 stop。 如果达到允许的最大结果数,则将截断数组。
注意
范围函数最多支持 1,048,576 (2^20) 个结果。
示例
以下示例返回 1 到 8 的数字数组,增量为 3。
print r = range(1, 8, 3)
输出
r |
---|
[1,4,7] |
以下示例返回包含 2007 年以来所有日期的数组:
print r = range(datetime(2007-01-01), datetime(2007-12-31), 1d)
输出
r |
---|
["2007-01-01T00:00:00.0000000Z","2007-01-02T00:00:00.0000000Z","2007-01-03T00:00:00.0000000Z",.....,"2007-12-31T00:00:00.0000000Z"] |
以下示例返回包含介于 1 到 3 之间的数字的数组。
print range(1, 3)
输出
print_0 |
---|
[1,2,3] |
以下示例返回 1 小时到 5 小时之间的时间范围。
print range(1h, 5h)
输出
print_0 |
---|
1,000,000 |
["01:00:00","02:00:00","03:00:00","04:00:00","05:00:00"] : |
以下示例返回截断数组,因为范围超出了结果数上限。 该示例演示通过使用 mv-expand 运算符将数组扩展到多条记录,然后统计记录条数时超出限制的情况。
print r = range(1,1000000000)
| mv-expand r
| count
输出
计数 |
---|
1,048,576 |