1.lpush(name,value)

在name的头部添加元素,没有则创建。

import redis,time
r = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpush('list',11,12,13)
print(r.lrange('list',0,-1))  # ['13', '12', '11']

2.rpush(name,value)

在name的尾部添加元素。

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.rpush('list',11,12,13)
print(r.lrange('list',0,-1))  # ['11', '12', '13']

3.lpushx(name,value)

向已经存在的name头部添加元素。

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpushx('list','q')  #只能添加一个元素,不能添加多个
print(r.lrange('list',0,-1))  # ['q', '13', '12', '11']

4. rpushx(name,value)

向已经存在的name尾部添加元素。

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.rpushx('list','q')  #只能添加一个元素,不能添加多个
print(r.lrange('list',0,-1))  # ['q', '13', '12', '11', '11', '12', '13', 'q']

5.linsert(name,where,ref,value)

在key对应的list的特定位置之前或者之后添加元素。

参数:

  • where:before 或者after
  • ref:标杆值(索引),在他的前面或者后面插入。
import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.linsert('list1','after','3','00')
print(r.lrange('list1',0,-1))

6.lset(name,index,value)

将特定位置的值修改为value

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lset('list',3,'test')
print(r.lrange('list',0,-1))  # ['q', '13', '12', 'test', '11', '12', '13', 'q']

7.lrem(name,index,num)

在name对应的list中删除指定的值,其中。

  • num=0,删除列表中的所有值。
  • num=2,从前到后,删除2个。
  • num=-2,从后到前,删除2个。
import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
print(r.lrange('list',0,-1))  # ['q', '13', '12', 'test', '11', '12', '13', 'q']
r.lrem('list','11',0)
r.lrem('list','12',2)
r.lrem('list','13',-2)
r.lrem('list','q',1)
print(r.lrange('list',0,-1))  # ['test', 'q']

8.lpop(name)和rpop(name)

lpop表示删除name中头部的第一个元素并且返回该元素。

rpop表示删除name中尾部的第一个元素并且返回该元素。

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpop('list')
r.rpop('list')
print(r.lrange('list',0,-1))  # []

9.ltrim(name,start,end)

删除索引没有在start和end之间的值。

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpush('list',11,22,33)
r.ltrim('list1',0,4)
print(r.lrange('list1',0,-1))  # []

10.index(name,index)

根据下标index获取元素

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpush('list',11,22,33)
print(r.lindex('list',2))  # 11

11.rpoplpush(src,dst)

移动一个列表的元素到另一个列表,从列表的尾部取出元素,添加到另一个列表的头部。

参数:

src:待取数据的列表

dst:待添加数据的列表

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpush('list',11,22,33)
r.rpoplpush('list','list0') # list0可以原先不存在
print(r.lrange('list0',0,-1)) #['11']

12.brpoplpush(src,dst,timeout)

移动一个列表的元素到另一个列表,从列表的尾部取出元素,添加到另一个列表的头部。

参数:

src:待取数据的列表

dst:待添加数据的列表

timeout:超时时间,timeout=0时,表示永久阻塞

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpush('list',11,22,33)
r.rpoplpush('list','list0') # list0可以原先不存在
print(r.lrange('list0',0,-1)) #['11']

13.blpop(keys,timeout)

将多个列表排列,按照从左到右去pop对应列表的元素。

参数中的keys表示多个列表的集合

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpush('list',11,22,33)
r.lpush('list0',11,22,33)while True:r.blpop(['list0','list'],timeout=2)print(r.lrange('list0',0,-1),r.lrange('list',0,-1))

14.自定义增量迭代

import redis,timer = redis.Redis(host='localhost',port=6379,decode_responses=True)
r.lpush('list',11,22,33)def liter(list_name):count = r.llen(list_name)for index in range(count):yield r.lindex(list_name,index)for item in liter('list'):print(item)

转载于:https://www.cnblogs.com/wl443587/p/10274208.html

redis基本命令list相关推荐

  1. Redis基本命令大全

    Redis基本命令 字符串类型的增删改查 增加一个key 为 name ,value 为 唐伯虎的值 set name "唐伯虎" 这里存储的是中文,所以进入客户端需要加一条命令 ...

  2. Redis第二讲【Redis基本命令和五大数据结构】

    [二.Redis基本命令和五大数据结构] redis的基础知识和命令 redis 是一个单进程(包装epoll函数来对读写事件进行相应) 默认有16个数据库,初始使用的数据库为0号库 默认端口为637 ...

  3. 头歌 Redis基本命令

    头歌 Redis基本命令 第1关:字符串.列表与集合 第2关:哈希与有序集合 第3关:Redis基本事务与其他命令 第1关:字符串.列表与集合 #!/usr/bin/env python #-*- c ...

  4. Redis基本命令及其使用

    简介 Redis官方网站 http://redis.io http://try.redis-db.com/是一个很好的在线练习网站,在上面可以学习redis的基本命令,边学习边练习. redis是一款 ...

  5. redis服务器索引文件删除,Redis基本命令整理

    strings类型 设值 设单个值 set key value 如果不存在,设一个值 setnx key value //nx: not exists 设置过期时间(expired time) set ...

  6. 《Redis操作Python系列、redis基本命令 list|CSDN创作打卡》

    导读 list类型是简单的字符串列表,按照插入顺序排序.每个列表最多可以存储 232 - 1 个元素(40多亿) ,list类型主要有以下应用场景. 个人用的比较多的是不分页的数据列表,或者是变动较少 ...

  7. Redis基本命令一Sets操作

    Sets特点:元素无序不重复,Sets可以增删改查元素.判断元素有无.随机获取元素.多个Sets间可以做交|并|差集.计数元素 命令一览:SADD.SREM.SISMEMBER.SMEMBERS.SP ...

  8. Redis基本命令速查表

    本文档由杨海波整理于 2016-04-06 注意事项 Redis键名区分大小写 Redis值是二进制安全的 Connection 连接 & 常用服务命令 AUTH 验证服务器命令 AUTH p ...

  9. Redis 远程连接和基本命令

    文章目录 Redis远程连接 Redis基本命令 Redis远程连接 redis远程连接服务器使用命令redis-cli. 语法格式为:redis-cli -h host -p port -a pas ...

最新文章

  1. Ubuntu 14.04 64bit上磁力链爬虫dht部署指南
  2. java超级简单贪吃蛇_java实现简易贪吃蛇游戏
  3. C++ 11 新特性: constexpr变量和constexpr函数
  4. 蓝桥杯 - 翻硬币(贪心)
  5. Java实现复数Complex的加减乘除运算、取模、求幅角角度
  6. 问题 1072: 汽水瓶
  7. 工作中用到的安卓日志相关命令(logcat)
  8. Python 基础课程第八天
  9. sql Server索引优化[转]
  10. SpringBoot技术点细解
  11. rose软件下载(Rational Rose 2003 Enterprise Edition)
  12. P2P原理之设备发现
  13. Word中文字后面是白色的
  14. 域名还能绑定动态IP?真是又涨见识了,再也不用购买固定IP了,赶快收藏
  15. 2020秋招 携程算法岗笔试编程题解答
  16. Python爬虫开发学习全教程第二版,爆肝十万字【建议收藏】
  17. 零基础学爬虫大概多久?
  18. node在linux无法连接mysql,无法连接到Node.js上的MySQL数据库
  19. 论文那些事儿:《Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks》
  20. table表格自动换行

热门文章

  1. kaldi语音识别实战pdf_语音识别相关工具和资料分享
  2. java comparable接口_Java面试题之Java集合篇三
  3. android 通知显示时间,android:在特定时间显示通知?
  4. 多视图几何总结——从本质矩阵恢复摄像机矩阵
  5. 【视频课】Pytorch模型分析进阶(可视化,参数量与计算量,计算速度)
  6. 【AI产品】五一出游赏花草,你一定需要这款“形色”
  7. 【AI不惑境】数据压榨有多狠,人工智能就有多成功
  8. 【模型解读】pooling去哪儿了?
  9. 全球及中国偶联单克隆抗体行业深度调研及项目风险评估报告2021-2027年
  10. 中国新能源商用车行业投资现状及前景规划分析报告2022-2027年版