# Lrange
获取列表指定范围内的元素
语法
LRANGE key start stop
自以下版本可用:
1.0.0
时间复杂度:
O(S+N) 其中 S 是小列表从 HEAD 开始偏移的距离,对于大列表,从最近端(HEAD 或 TAIL)开始偏移;N 是指定范围内的元素个数。
ACL 类别:
@read
,@list
,@slow
返回存储在key
中的列表中的指定元素。偏移量start
和stop
是基于零的索引,其中0
是列表的第一个元素(列表的头),1
是下一个元素,依此类推。
这些偏移量也可以是负数,表示从列表末尾开始的偏移量。例如,-1
是列表的最后一个元素,-2
倒数第二个,等等。
# 与各种编程语言中的范围函数保持一致
请注意,如果您有一个从 0 到 100 的数字列表,LRANGE list 0 10
将返回 11 个元素,即包含最右边的项目。这可能与您选择的编程语言中与范围相关的函数的行为一致,也可能不一致(想想 Ruby 或 Python 的Range.new
函数)。Array#slice``range()
# 超出范围的索引
超出范围的索引不会产生错误。如果start
大于列表的末尾,则返回一个空列表。如果stop
大于列表的实际末尾,Redis 会将其视为列表的最后一个元素。
# 返回
数组回复:指定范围内的元素列表。
# 示例
redis> RPUSH mylist "one"
(integer) 1
redis> RPUSH mylist "two"
(integer) 2
redis> RPUSH mylist "three"
(integer) 3
redis> LRANGE mylist 0 0
1) "one"
redis> LRANGE mylist -3 2
1) "one"
2) "two"
3) "three"
redis> LRANGE mylist -100 100
1) "one"
2) "two"
3) "three"
redis> LRANGE mylist 5 10
(empty array)
redis>
# 反馈
如果您在此页面上发现了问题,或有改进建议,请提交合并请求或在存储库中打开问题。