Команда ReQL: range
Синтаксис команды
r.range() → stream r.range([start_value, ]end_value) → stream
Описание
Генерирует поток последовательных целых чисел в заданном диапазоне.
range принимает 0, 1 или 2 аргумента:
- Без аргументов,
rangeвозвращает «бесконечный» поток от 0 до максимального целого значения включительно; - С одним аргументом,
rangeвозвращает поток от 0 до значения конца, не включая его; - С двумя аргументами,
rangeвозвращает поток от начального значения до значения конца, не включая его.
Обратите внимание, что левая граница (включая неявную левую границу 0 в форме с 0 и 1 аргументом) всегда закрыта, а правая граница всегда открыта: начальное значение всегда будет включено в возвращаемый диапазон, а конечное значение — не будет включено в возвращаемый диапазон.
Все указанные аргументы должны быть целыми числами, в противном случае будет выброшено ReqlRuntimeError. Если начальное значение равно или больше конечного значения, ошибка не будет выброшена, но будет возвращён поток нулевой длины.
Пример: Возвращает диапазон из четырёх элементов [0, 1, 2, 3].
> r.range(4).run(conn)
[0, 1, 2, 3]
Вы также можете использовать команду limit с вариантом без аргументов, чтобы получить тот же результат в этом случае:
> r.range().limit(4).run(conn)
[0, 1, 2, 3]
Пример: Возвращает диапазон от -5 до 5.
> r.range(-5, 6).run(conn)
[-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5]
© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/python/range/