redis 列表使用

工作中需要用到固定大小的队列,用redis列表模拟一个:

key = "hw:" + str(sender_id)
if RedisClient.llen(key) <60:
       RedisClient.lpush(key,msg_id)
else:
        RedisClient.rpop(key)       #删除末尾
        RedisClient.lpush(key,msg_id) #队列头添加数据
LRANGE查看队列所有元素,-1表示列表的最后一个元素

127.0.0.1:6379> LRANGE hw:48821 0 -1
1) "150074"
2) "150065"
3) "150072"
4) "150076"
5) "150071"
6) "150048"
7) "150039"

还可以用LTRIM对队列进行裁剪:

127.0.0.1:6379> LTRIM hw:48821 0 5
OK
127.0.0.1:6379> LRANGE hw:48821 0 -1
1) "150074"
2) "150065"
3) "150072"
4) "150076"
5) "150071"
6) "150048"

127.0.0.1:6379> LINDEX hw:48821 5          #返回指定下标
"150048"
127.0.0.1:6379> LINSERT hw:48821 after 150048 150039 # 指定元素后面或者前面插入值
(integer) 7
127.0.0.1:6379> LRANGE hw:48821 0 -1
1) "150074"
2) "150065"
3) "150072"
4) "150076"
5) "150071"
6) "150048"
7) "150039"

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值